From e5fd99f491480e4339de1bccb8339987d58ea07a Mon Sep 17 00:00:00 2001 From: Ross Date: Mon, 29 Dec 2025 12:04:48 +0000 Subject: [PATCH] Remove unused exam scores refresh function and related logic for CID user exam scores --- anatomy/views.py | 96 ------------------------------------------------ 1 file changed, 96 deletions(-) diff --git a/anatomy/views.py b/anatomy/views.py index ec88af5f..268478b8 100644 --- a/anatomy/views.py +++ b/anatomy/views.py @@ -1045,102 +1045,6 @@ def mark2_question_marked(request, pk): return render(request, 'anatomy/partials/mark2_question_marked_fragment.html', context) - -#@login_required -#def exam_scores_refresh(request, pk): -# exam = get_object_or_404(Exam, pk=pk) -# -# if not exam.exam_mode: -# raise Http404("Packet not in exam mode") -# -# questions = exam.exam_questions.all() # Don't worry about order here -# -# cids = UserAnswer.objects.filter(question__in=questions, exam__id=pk) -# -# # Force a score update -# for c in cids: -# c.get_answer_score(cached=False) -# -# return render( -# request, -# "anatomy/base.html", -# { -# "simple_content": "Answer scores updated", -# }, -# ) - - -def exam_scores_cid_user(request, pk, cid, passcode): - exam = get_object_or_404(Exam, pk=pk) - - if not exam.exam_mode: - raise Http404("Packet not in exam mode") - - if not exam.check_cid_user(cid, passcode, request.user): - raise Http404("Error accessing exam") - - questions = exam.get_questions().prefetch_related("answers") - - answers_and_marks = [] - answers_marks = [] - answers = [] - - view_all_results = False - if request.user.groups.filter(name="view_all_results").exists(): - view_all_results = True - - for q in questions: - # Get user answer - user_answer = q.cid_user_answers.filter(cid=cid, exam__id=pk).first() - if not user_answer: - # skip if no answer - answers_marks.append(0) - answers.append("") - answer_score = 0 - ans = "Not answered" - else: - ans = user_answer.answer - - answer_score = user_answer.get_answer_score() - - correct_answer = q.get_primary_answer() - - if not exam.publish_results and not view_all_results: - correct_answer = "*****" - answer_score = 0 - answers.append(ans) - answers_marks.append(answer_score) - answers_and_marks.append((ans, answer_score, correct_answer)) - - if "unmarked" in answers_marks: - answered = [i for i in answers_marks if type(i) == int] - total_score = sum(answered) - unmarked_number = len(answers_marks) - len(answered) - total_score = "{} ({} unmarked)".format(total_score, unmarked_number) - else: - total_score = sum(answers_marks) - - max_score = len(questions) * 2 - - return render( - request, - "anatomy/exam_scores_user.html", - { - "exam": exam, - "cid": cid, - "passcode": passcode, - "questions": questions, - "answers": answers, - "answers_marks": answers_marks, - "total_score": total_score, - "max_score": max_score, - "answers_and_marks": answers_and_marks, - "view_all_results": view_all_results, - }, - ) - - - class AnatomyQuestionCreateBase(RevisionMixin, LoginRequiredMixin, CreateView): model = AnatomyQuestion form_class = AnatomyQuestionForm