diff --git a/anatomy/views.py b/anatomy/views.py index df32968e..ff885b51 100644 --- a/anatomy/views.py +++ b/anatomy/views.py @@ -295,10 +295,12 @@ def loadJsonAnswer(answer): def mark_all(request, exam_pk, sk): return mark(request, exam_pk, sk, unmarked_exam_answers_only=False) + @login_required def mark_review(request, exam_pk, sk): return mark(request, exam_pk, sk, unmarked_exam_answers_only=False, review=True) + # @user_passes_test(user_is_admin, login_url="/accounts/login") @login_required def mark(request, pk, sk): @@ -307,7 +309,6 @@ def mark(request, pk, sk): if not exam.exam_mode: raise Http404("Packet not in exam mode") - questions = exam.exam_questions.all() n = sk @@ -351,7 +352,7 @@ def mark(request, pk, sk): return redirect("anatomy:mark", pk=pk, sk=n + 1) cd = form.cleaned_data - + marked_answers = json.loads(cd.get("marked_answers")) # This should probably use json (or something else...) @@ -360,7 +361,7 @@ def mark(request, pk, sk): ("correct", Answer.MarkOptions.CORRECT), ("half-correct", Answer.MarkOptions.HALF_MARK), ("incorrect", Answer.MarkOptions.INCORRECT), - ) + ) for status_string, status in to_run: for ans in marked_answers[status_string]: @@ -379,7 +380,7 @@ def mark(request, pk, sk): a.status = status a.save() - + if "next" in request.POST: return redirect("anatomy:mark", pk=pk, sk=n + 1) elif "previous" in request.POST: @@ -810,9 +811,9 @@ class QuestionClone(AnatomyQuestionCreateBase): initial_data = model_to_dict(old_object, exclude=["id"]) # We don't want to clone the exam details - #exams = old_object.exams.all().values_list("id", flat=True) + # exams = old_object.exams.all().values_list("id", flat=True) - #initial_data["exams"] = list(exams) + # initial_data["exams"] = list(exams) return initial_data @@ -1001,6 +1002,7 @@ GenericViews = GenericViewBase("anatomy", AnatomyQuestion, CidUserAnswer, Exam) class ExamClone(ExamCloneMixin, ExamCreate): """Clone exam view""" + class StructureAutocomplete(autocomplete.Select2QuerySetView): def get_queryset(self): # Don't forget to filter out results depending on the visitor ! @@ -1012,4 +1014,4 @@ class StructureAutocomplete(autocomplete.Select2QuerySetView): if self.q: qs = qs.filter(name__istartswith=self.q) - return qs \ No newline at end of file + return qs