Exemple #1
0
def view(request, pk):
    template_url = 'operator_logs/view.html'
    operator = Operators.login_required(request)
    if operator is None:
        Operators.set_redirect_field_name(request, request.path)
        return redirect(reverse("operators_signin"))
    else:
        auth_permissions = Operators.get_auth_permissions(operator)
        if settings.ACCESS_PERMISSION_LOG_VIEW in auth_permissions.values():
            try:
                model = Operator_Logs.objects.get(operator_log_id=pk)
                model.operator_log_updated_at = Utils.get_convert_datetime(
                    model.operator_log_updated_at, settings.TIME_ZONE,
                    settings.APP_CONSTANT_DISPLAY_TIME_ZONE
                ) + ' ' + settings.APP_CONSTANT_DISPLAY_TIME_ZONE_INFO
                return render(
                    request, template_url, {
                        'section':
                        settings.BACKEND_SECTION_OPERATOR_LOGS,
                        'title':
                        Operator_Logs.TITLE,
                        'name':
                        Operator_Logs.NAME,
                        'operator':
                        operator,
                        'auth_permissions':
                        auth_permissions,
                        'model':
                        model,
                        'index_url':
                        reverse("operator_logs_index"),
                        'select_single_url':
                        reverse("operator_logs_select_single"),
                    })
            except (TypeError, ValueError, OverflowError,
                    Operator_Logs.DoesNotExist):
                return HttpResponseNotFound('Not Found',
                                            content_type='text/plain')
        else:
            return HttpResponseForbidden('Forbidden',
                                         content_type='text/plain')
Exemple #2
0
def view(request, pk):
    template_url = 'product-requests/view.html'
    operator = Operators.login_required(request)
    if operator is None:
        Operators.set_redirect_field_name(request, request.path)
        return redirect(reverse("operators_signin"))
    else:
        auth_permissions = Operators.get_auth_permissions(operator)
        if settings.ACCESS_PERMISSION_ORDER_VIEW in auth_permissions.values():
            try:
                model = Product_Requests.objects.get(product_request_id=pk)
                product_request_items = Product_Request_Items.objects.filter(
                    product_requests_product_request_id=pk).all()

                if model.product_request_created_id == str(
                        operator.operator_id) and model.product_request_status == Product_Requests.STATUS_PENDING:
                    template_url = 'product-requests/view-edit.html'

                display_level_approval = False

                timeline_notifications = []
                counter = -1
                if model.product_request_requested_id != '':
                    notification_timeline = NotificationsTimeline()
                    notification_timeline.message = 'Requested <small>by ' + model.product_request_requested_role + '</small>'
                    notification_timeline.datetime = Utils.get_convert_datetime(model.product_request_requested_at,
                                                                                settings.TIME_ZONE,
                                                                                settings.APP_CONSTANT_DISPLAY_TIME_ZONE) + ' ' + settings.APP_CONSTANT_DISPLAY_TIME_ZONE_INFO
                    timeline_notifications.append(notification_timeline)

                if model.product_request_reviewed_id != '':
                    notification_timeline = NotificationsTimeline()
                    notification_timeline.message = 'Reviewed <small>by ' + model.product_request_reviewed_role + '</small>'
                    notification_timeline.datetime = Utils.get_convert_datetime(model.product_request_reviewed_at,
                                                                                settings.TIME_ZONE,
                                                                                settings.APP_CONSTANT_DISPLAY_TIME_ZONE) + ' ' + settings.APP_CONSTANT_DISPLAY_TIME_ZONE_INFO
                    timeline_notifications.append(notification_timeline)

                if model.product_request_approved_updated_id != '':
                    notification_timeline = NotificationsTimeline()
                    notification_timeline.message = 'Approved <small>by ' + model.product_request_approved_updated_role + '</small>'
                    if model.product_request_status == Product_Requests.STATUS_REJECTED:
                        notification_timeline.message = 'Rejected <small>by ' + model.product_request_approved_updated_role + '</small>'
                    notification_timeline.datetime = Utils.get_convert_datetime(
                        model.product_request_approved_updated_at,
                        settings.TIME_ZONE,
                        settings.APP_CONSTANT_DISPLAY_TIME_ZONE) + ' ' + settings.APP_CONSTANT_DISPLAY_TIME_ZONE_INFO
                    timeline_notifications.append(notification_timeline)

                if model.product_request_status == Product_Requests.STATUS_REQUESTED:
                    notification_timeline = NotificationsTimeline()
                    model.product_request_readable_status = notification_timeline.message = "<b class='text-red'>Review pending from Stock Admin</b>"
                    notification_timeline.datetime = ''
                    timeline_notifications.append(notification_timeline)

                if model.product_request_status == Product_Requests.STATUS_REVIEWED:
                    notification_timeline = NotificationsTimeline()
                    model.product_request_readable_status = notification_timeline.message = "<b class='text-red'>Approval pending from Stock Admin</b>"
                    notification_timeline.datetime = ''
                    timeline_notifications.append(notification_timeline)

                if model.product_request_status == Product_Requests.STATUS_APPROVED:
                    notification_timeline = NotificationsTimeline()
                    model.product_request_readable_status = notification_timeline.message = "<b class='text-red'>Approved</b>"
                    notification_timeline.datetime = ''
                    timeline_notifications.append(notification_timeline)

                if model.product_request_status == Product_Requests.STATUS_REJECTED:
                    notification_timeline = NotificationsTimeline()
                    model.product_request_readable_status = notification_timeline.message = "<b class='text-red'>Rejected</b>"
                    notification_timeline.datetime = ''
                    timeline_notifications.append(notification_timeline)

                return render(
                    request, template_url,
                    {
                        'section': settings.BACKEND_SECTION_STOCK_ALL_REQUESTS,
                        'title': Product_Requests.TITLE,
                        'name': Product_Requests.NAME,
                        'operator': operator,
                        'auth_permissions': auth_permissions,
                        'model': model,
                        'index_url': reverse("product_requests_index"),
                        'select_single_url': reverse("product_requests_select_single"),
                        'product_request_items': product_request_items,
                        'product_request_items_size': product_request_items,
                        'item_index_url': reverse("product_requests_view", kwargs={'pk': pk}),
                        'item_select_single_url': reverse("product_request_items_select_single"),
                        'status_html_tag': Product_Requests.get_status_html_tag(model),
                        'display_level_approval': display_level_approval,
                        'timeline_notifications': timeline_notifications,
                    }
                )
            except(TypeError, ValueError, OverflowError, Product_Requests.DoesNotExist):
                return HttpResponseNotFound('Not Found', content_type='text/plain')
        else:
            return HttpResponseForbidden('Forbidden', content_type='text/plain')
Exemple #3
0
 def render_backup_file_created_at(value):
     ts = datetime.fromtimestamp(value)
     return Utils.get_convert_datetime(
         ts, settings.TIME_ZONE, settings.APP_CONSTANT_DISPLAY_TIME_ZONE
     ) + ' ' + settings.APP_CONSTANT_DISPLAY_TIME_ZONE_INFO
 def render_operator_log_updated_at(value):
     return Utils.get_convert_datetime(
         value, settings.TIME_ZONE, settings.APP_CONSTANT_DISPLAY_TIME_ZONE
     ) + ' ' + settings.APP_CONSTANT_DISPLAY_TIME_ZONE_INFO