diff options
| -rw-r--r-- | archaeological_finds/forms.py | 11 | ||||
| -rw-r--r-- | archaeological_finds/models_finds.py | 8 | ||||
| -rw-r--r-- | archaeological_finds/urls.py | 21 | ||||
| -rw-r--r-- | archaeological_finds/views.py | 5 | 
4 files changed, 45 insertions, 0 deletions
diff --git a/archaeological_finds/forms.py b/archaeological_finds/forms.py index c1b5a229d..15ce0465b 100644 --- a/archaeological_finds/forms.py +++ b/archaeological_finds/forms.py @@ -1108,6 +1108,17 @@ class QAFindbasketDuplicateForm(IshtarForm):          self.basket.duplicate(label=self.cleaned_data["label"], ishtaruser=self.user) +class QAFindBasketModify(QAForm): +    form_admin_name = _("Find - Quick action - Modify") +    form_slug = "findbasket-quickaction-modify" +    MULTI = False + +    qa_label = forms.CharField(label="Denomination", max_length=None, required=False) + +    REPLACE_FIELDS = [ +        "qa_label", +    ] +  class PreservationForm(CustomForm, ManageOldType):      form_label = _("Preservation")      form_admin_name = _("Find - 030 - Preservation") diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py index aded3d3f0..bccbcce79 100644 --- a/archaeological_finds/models_finds.py +++ b/archaeological_finds/models_finds.py @@ -849,7 +849,15 @@ class FindBasket(Basket, MainItem, ValueGetter):      SLUG = "findbasket"      items = models.ManyToManyField("Find", blank=True, related_name="basket") +    QA_EDIT = QuickAction( +        url="findbasket-qa-bulk-update", +        icon_class="fa fa-pencil", +        text=_("Modify"), +        target="one", +        rights=["view_find", "view_own_find"], +    )      QUICK_ACTIONS = [ +        QA_EDIT,          QuickAction(              url="findbasket-qa-duplicate",              icon_class="fa fa-clone", diff --git a/archaeological_finds/urls.py b/archaeological_finds/urls.py index 50abd1f99..9db2bbca1 100644 --- a/archaeological_finds/urls.py +++ b/archaeological_finds/urls.py @@ -197,6 +197,27 @@ urlpatterns = [          name="find-qa-basket",      ),      url( +        r"findbasket-qa-bulk-update/(?P<pks>[0-9-]+)?/$", +        check_rights([ +            "change_find", +            "change_own_find", +        ])( +            views.QAFindBasketModifyView.as_view() +        ), +        name="findbasket-qa-bulk-update", +    ), +    url( +        r"findbasket-qa-bulk-update/(?P<pks>[0-9-]+)?/confirm/$", +        check_rights([ +            "change_find", +            "change_own_find", +        ])( +            views.QAFindBasketModifyView.as_view() +        ), +        name="findbasket-qa-bulk-update-confirm", +        kwargs={"confirm": True}, +    ), +    url(          r"^find-qa-packaging/(?P<pks>[0-9-]+)?/$",          check_rights(["change_find", "change_own_find"])(              views.QAFindTreatmentFormView.as_view() diff --git a/archaeological_finds/views.py b/archaeological_finds/views.py index 86bc0a44e..70868e55a 100644 --- a/archaeological_finds/views.py +++ b/archaeological_finds/views.py @@ -1300,6 +1300,11 @@ class QAFindbasketDuplicateFormView(QAItemForm):          return data +class QAFindBasketModifyView(QAItemEditForm): +    model = models.FindBasket +    form_class = forms.QAFindBasketModify + +  class QAFindLockView(QABaseLockView):      model = models.Find      base_url = "find-qa-lock"  | 
