Refactor collection_case_questions function to use case_number instead of case_id for improved clarity and consistency in case retrieval

This commit is contained in:
Ross
2025-11-24 12:02:43 +00:00
parent 0badca4c4f
commit e8c35efd83
+5 -10
View File
@@ -3173,18 +3173,13 @@ def collection_case_priors(request, exam_id, case_number):
@user_is_collection_author_or_atlas_editor
def collection_case_questions(request, exam_id, case_id):
# Support either case_number (index) or case_id (case PK)
def collection_case_questions(request, exam_id, case_number):
collection = get_object_or_404(CaseCollection, pk=exam_id)
try:
casedetail = CaseDetail.objects.get(case=case_id, collection=exam_id)
collection = casedetail.collection
case_obj = collection.get_case_by_index(case_number)
casedetail = CaseDetail.objects.get(case=case_obj, collection=collection)
except Exception:
collection = get_object_or_404(CaseCollection, pk=exam_id)
try:
case_obj = collection.get_case_by_index(int(case_id))
casedetail = CaseDetail.objects.get(case=case_obj, collection=collection)
except Exception:
raise Http404("Case not found in collection")
raise Http404("Case not found in collection")
if not collection.collection_type == "QUE":
raise Http404("Collection not in question mode")