From 0b12d95bdd740a5c15085b73c283b8afaa9461fd Mon Sep 17 00:00:00 2001 From: Ross Date: Mon, 15 Sep 2025 11:23:20 +0100 Subject: [PATCH] Fix navigation links in collection case details and enhance form handling for case detail updates --- atlas/templates/atlas/collection_case_details.html | 4 ++-- atlas/templates/atlas/collection_detail.html | 5 +++-- atlas/views.py | 13 ++++++++++++- 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/atlas/templates/atlas/collection_case_details.html b/atlas/templates/atlas/collection_case_details.html index cdbb0bef..31f76d7c 100644 --- a/atlas/templates/atlas/collection_case_details.html +++ b/atlas/templates/atlas/collection_case_details.html @@ -5,11 +5,11 @@
{% if previous %} - Previous question + Previous question {% endif %} Viewing question as part of collection: {{collection.name}} [{{case_number|add:1}}/{{collection_length}}] {% if next %} - Next question + Next question {% endif %}
diff --git a/atlas/templates/atlas/collection_detail.html b/atlas/templates/atlas/collection_detail.html index f5e022e5..37d3483f 100644 --- a/atlas/templates/atlas/collection_detail.html +++ b/atlas/templates/atlas/collection_detail.html @@ -44,14 +44,15 @@ {{casedetail.case.title}} - () - () + ( {% if casedetail.default_viewerstate %} {% endif %} ) + () + {% if collection.collection_type == "QUE" %} ( {% if casedetail.question_schema %} diff --git a/atlas/views.py b/atlas/views.py index 6d6a91f1..a3426330 100755 --- a/atlas/views.py +++ b/atlas/views.py @@ -2346,7 +2346,18 @@ def collection_case_details(request, exam_id, case_id): collection = case_detail.collection - form = CaseDetailForm(instance=case_detail) + if request.method == "POST": + form = CaseDetailForm(request.POST, instance=case_detail) + if form.is_valid(): + form.save() + if request.htmx: + return HttpResponse("Saved") + return redirect(request.path) + else: + if request.htmx: + return HttpResponse("Invalid form", status=400) + else: + form = CaseDetailForm(instance=case_detail) case_number, case_count = collection.get_index_of_case( case_detail.case, case_count=True