Example #1
0
    def cancel_invoices(self, request, queryset):
        if "cancel" in request.POST:
            user_message = _("Action canceled by the user.")
            user_message_level = messages.INFO
            self.message_user(request, user_message, user_message_level)
            return None
        permanence = queryset.order_by("?").first()
        if permanence is None or permanence.status != PERMANENCE_DONE:
            user_message = _("Action canceled by the system.")
            user_message_level = messages.ERROR
            self.message_user(request, user_message, user_message_level)
            return None

        if "apply" in request.POST:
            user_message, user_message_level = task_invoice.admin_cancel(queryset)
            self.message_user(request, user_message, user_message_level)
            return None
        return render(
            request,
            "repanier/confirm_admin_action.html",
            {
                "sub_title": _("Please, confirm the action : cancel the invoices"),
                "action": "cancel_invoices",
                "permanence": permanence,
                "action_checkbox_name": admin.ACTION_CHECKBOX_NAME,
            },
        )
Example #2
0
 def cancel_archive(self, request, queryset):
     permanence = queryset.order_by("?").first()
     if permanence is None or permanence.status != PERMANENCE_ARCHIVED:
         user_message = _("Action canceled by the system.")
         user_message_level = messages.ERROR
         self.message_user(request, user_message, user_message_level)
         return None
     user_message, user_message_level = task_invoice.admin_cancel(queryset)
     self.message_user(request, user_message, user_message_level)
     return None
Example #3
0
    def cancel_invoice_or_archive_or_cancelled(self, request, permanence_qs,
                                               action):
        if 'cancel' in request.POST:
            user_message = _("Action canceled by the user.")
            user_message_level = messages.INFO
            self.message_user(request, user_message, user_message_level)
            return
        permanence = permanence_qs.first()
        if permanence is None or permanence.status not in [
                PERMANENCE_INVOICED, PERMANENCE_ARCHIVED, PERMANENCE_CANCELLED
        ]:
            user_message = _("Action canceled by the system.")
            user_message_level = messages.ERROR
            self.message_user(request, user_message, user_message_level)
            return

        if 'apply' in request.POST:
            user_message, user_message_level = task_invoice.admin_cancel(
                permanence)
            self.message_user(request, user_message, user_message_level)
            return
        return render(
            request, 'repanier/confirm_admin_action.html', {
                'sub_title':
                _("Please, confirm the action : cancel the invoices")
                if permanence.status == PERMANENCE_INVOICED else
                _("Please, confirm the action : cancel the archiving")
                if permanence.status == PERMANENCE_ARCHIVED else
                _("Please, confirm the action : restore the delivery"),
                'action':
                action,
                'permanence':
                permanence,
                'action_checkbox_name':
                admin.ACTION_CHECKBOX_NAME,
            })