diff options
-rw-r--r-- | archaeological_operations/models.py | 11 | ||||
-rw-r--r-- | archaeological_operations/urls.py | 5 | ||||
-rw-r--r-- | archaeological_operations/views.py | 18 | ||||
-rw-r--r-- | archaeological_operations/wizards.py | 6 | ||||
-rw-r--r-- | changelog/en/changelog_2022-06-15.md | 3 | ||||
-rw-r--r-- | changelog/fr/changelog_2023-01-25.md | 1 | ||||
-rw-r--r-- | ishtar_common/models.py | 2 | ||||
-rw-r--r-- | locale/fr/LC_MESSAGES/django.po | 4 |
8 files changed, 46 insertions, 4 deletions
diff --git a/archaeological_operations/models.py b/archaeological_operations/models.py index ea4b6c244..eeee9e8aa 100644 --- a/archaeological_operations/models.py +++ b/archaeological_operations/models.py @@ -1969,6 +1969,17 @@ class Operation( True, ), ] + end + if profile.files and self.can_do(request, "add_administrativeact"): + actions += [ + ( + reverse("operation-add-adminact", args=[self.pk]), + _("Add associated administrative act"), + "fa fa-plus", + _("admin. act"), + "", + False, + ), + ] if can_edit_operation: actions += [ ( diff --git a/archaeological_operations/urls.py b/archaeological_operations/urls.py index 7e2b71589..05c03bc51 100644 --- a/archaeological_operations/urls.py +++ b/archaeological_operations/urls.py @@ -75,6 +75,11 @@ urlpatterns = [ name="operation_search", ), url( + r"^operation-add-adminact/(?P<pk>[0-9-]+)/$", + check_rights(["add_administrativeact"])(views.operation_adminact_add), + name="operation-add-adminact", + ), + url( r"operation_creation/(?P<step>.+)?$", check_rights(["add_operation", "add_own_operation"])( views.operation_creation_wizard diff --git a/archaeological_operations/views.py b/archaeological_operations/views.py index 8fa7e08c0..08a1ee05c 100644 --- a/archaeological_operations/views.py +++ b/archaeological_operations/views.py @@ -720,6 +720,24 @@ def operation_administrativeactop_delete(request, pk): return redirect(reverse(wizard_url, kwargs={"step": "final-" + wizard_url})) +def operation_adminact_add(request, pk, current_right=None): + try: + models.Operation.objects.get(pk=pk) + except models.Operation.DoesNotExist: + raise Http404() + operation_administrativeactop_wizard(request) + + wizards.OperationAdministrativeActWizard.session_set_value( + request, "selec-operation_administrativeactop", "pk", pk, reset=True + ) + return redirect( + reverse( + "operation_administrativeactop", + kwargs={"step": "administrativeact-operation_administrativeactop"}, + ) + ) + + administrativact_register_wizard = SearchWizard.as_view( [ ( diff --git a/archaeological_operations/wizards.py b/archaeological_operations/wizards.py index 402219e41..581652c8f 100644 --- a/archaeological_operations/wizards.py +++ b/archaeological_operations/wizards.py @@ -350,6 +350,12 @@ class OperationAdministrativeActWizard(OperationWizard): res = render(self.request, "ishtar/wizard/wizard_done.html", dct) return res + def get_form_initial(self, step, data=None): + if not self.edit: + return {} + initial = super().get_form_initial(step) + return initial + class OperationEditAdministrativeActWizard(OperationAdministrativeActWizard): model = models.AdministrativeAct diff --git a/changelog/en/changelog_2022-06-15.md b/changelog/en/changelog_2022-06-15.md index 655958a5e..e4357da86 100644 --- a/changelog/en/changelog_2022-06-15.md +++ b/changelog/en/changelog_2022-06-15.md @@ -18,7 +18,8 @@ v4.0.XX - 2099-12-31 - Operation: - improve sheet (#5753) - rename "operation code" to "yearly index" - - finds and documentation deposit dates + - finds and documentation deposit dates + - quick action: add administrative act - Find: - conservation state becomes multi-valued (#5904) - batch update: "previous id" can be changed for many find diff --git a/changelog/fr/changelog_2023-01-25.md b/changelog/fr/changelog_2023-01-25.md index 57de99d24..bb3420fb4 100644 --- a/changelog/fr/changelog_2023-01-25.md +++ b/changelog/fr/changelog_2023-01-25.md @@ -17,6 +17,7 @@ v4.0.XX - 2099-12-31 - amélioration de la fiche (#5753) - renommage de "code opération" en "index annuel" - ajout des dates de versement du mobilier et de la documentation + - action rapide : ajouter un acte administratif - Mobilier : - État de conserveration devient multi valué (#5904) - modifications par lot : "Identifiant précédent" peut être changé pour plusieurs mobiliers à la fois diff --git a/ishtar_common/models.py b/ishtar_common/models.py index bf523632a..61595a624 100644 --- a/ishtar_common/models.py +++ b/ishtar_common/models.py @@ -1130,7 +1130,7 @@ class IshtarSiteProfile(models.Model, Cached): null=True, blank=True, ) - files = models.BooleanField(_("Files module"), default=False) + files = models.BooleanField(_("File/administrative module"), default=False) archaeological_site = models.BooleanField( _("Archaeological site module"), default=False ) diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po index 780a6b335..9bb469cc0 100644 --- a/locale/fr/LC_MESSAGES/django.po +++ b/locale/fr/LC_MESSAGES/django.po @@ -11030,8 +11030,8 @@ msgstr "" "Choisir une configuration alternative pour les libellés, gestion des index" #: ishtar_common/models.py:1133 -msgid "Files module" -msgstr "Module Dossiers" +msgid "File/administrative module" +msgstr "Module Dossiers/Administratif" #: ishtar_common/models.py:1135 msgid "Archaeological site module" |