From ca10cc175991b9e5d016d82541e627bcd6b9067c Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 19 Nov 2025 16:50:50 +0100 Subject: ✨ operation - quick context record form: open the newly created context record MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- archaeological_context_records/forms.py | 2 +- archaeological_context_records/views.py | 7 +++++-- ishtar_common/templates/ishtar/forms/success.html | 5 +++++ ishtar_common/views.py | 3 +++ 4 files changed, 14 insertions(+), 3 deletions(-) diff --git a/archaeological_context_records/forms.py b/archaeological_context_records/forms.py index 75b6d71ef..7fa075f0e 100644 --- a/archaeological_context_records/forms.py +++ b/archaeological_context_records/forms.py @@ -677,7 +677,7 @@ class QAOperationCR(IshtarForm): data["parcel_id"] = self.cleaned_data["parcel"] else: data["town_id"] = self.cleaned_data["town"] - models.ContextRecord.objects.create(**data) + return models.ContextRecord.objects.create(**data) class QAContextRecordDuplicateForm(IshtarForm): diff --git a/archaeological_context_records/views.py b/archaeological_context_records/views.py index 98e9ef0f2..27651dc2d 100644 --- a/archaeological_context_records/views.py +++ b/archaeological_context_records/views.py @@ -333,6 +333,8 @@ class QAOperationContextRecordView(QAItemForm): model = Operation form_class = forms.QAOperationCR page_name = _("Context record") + icon = "fa fa-plus" + action_name = _("Create") def get_quick_action(self): return QuickAction( @@ -344,8 +346,9 @@ class QAOperationContextRecordView(QAItemForm): ) def form_valid(self, form): - form.save(self.items) - return HttpResponseRedirect(reverse("success")) + cr = form.save(self.items) + url = reverse(models.ContextRecord.SHOW_URL, kwargs={"pk": cr.pk}) + return HttpResponseRedirect(reverse("success") + f"?load_window={url}") class QAContextRecordLockView(QABaseLockView): diff --git a/ishtar_common/templates/ishtar/forms/success.html b/ishtar_common/templates/ishtar/forms/success.html index 963273276..a3885a813 100644 --- a/ishtar_common/templates/ishtar/forms/success.html +++ b/ishtar_common/templates/ishtar/forms/success.html @@ -12,6 +12,11 @@ $(document).ready(function(){ window.location.replace(redirect); }, 500); {% endif %} + {% if load_window %} + setTimeout(function(){ + load_window("{{load_window}}"); + }, 1000); + {% endif %} main_submit_search(); }); diff --git a/ishtar_common/views.py b/ishtar_common/views.py index f6dd5898c..2a6c80abc 100644 --- a/ishtar_common/views.py +++ b/ishtar_common/views.py @@ -3173,6 +3173,9 @@ class SuccessView(TemplateView): msg = self.request.GET.get("message") if msg: data["message"] = urllib.parse.unquote(msg) + load = self.request.GET.get("load_window") + if load: + data["load_window"] = urllib.parse.unquote(load) return data -- cgit v1.2.3