diff options
Diffstat (limited to 'ishtar_common/views.py')
-rw-r--r-- | ishtar_common/views.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/ishtar_common/views.py b/ishtar_common/views.py index 3563ac9db..4724d61b7 100644 --- a/ishtar_common/views.py +++ b/ishtar_common/views.py @@ -2264,6 +2264,8 @@ class QAItemForm(IshtarMixin, LoginRequiredMixin, FormView): # check availability quick_action = self.get_quick_action() + if not quick_action: + raise Http404() if not quick_action.is_available( user=request.user, session=request.session): for item in self.items: @@ -2379,3 +2381,27 @@ class QADocumentForm(QAItemEditForm): form_class = forms.QADocumentFormMulti +class QADocumentDuplicateFormView(QAItemForm): + template_name = 'ishtar/forms/qa_document_duplicate.html' + model = models.Document + page_name = _("Duplicate") + form_class = forms.QADocumentDuplicateForm + base_url = "document-qa-duplicate" + + def get_form_kwargs(self): + kwargs = super(QADocumentDuplicateFormView, + self).get_form_kwargs() + kwargs['user'] = self.request.user + return kwargs + + def form_valid(self, form): + form.save() + return HttpResponseRedirect(reverse("success")) + + def get_context_data(self, **kwargs): + data = super(QADocumentDuplicateFormView, + self).get_context_data(**kwargs) + data['action_name'] = _("Duplicate") + return data + + |