.
This commit is contained in:
+14
-14
@@ -209,9 +209,9 @@ def exam_take_overview(request, pk, cid=None, passcode=None):
|
||||
questions = exam.exam_questions.all()
|
||||
|
||||
if cid is not None:
|
||||
answers = CidUserAnswer.objects.filter(user=request.user, exam=exam)
|
||||
else:
|
||||
answers = CidUserAnswer.objects.filter(cid=cid, exam=exam)
|
||||
else:
|
||||
answers = CidUserAnswer.objects.filter(user=request.user, exam=exam)
|
||||
|
||||
answer_question_map = {}
|
||||
for ans in answers:
|
||||
@@ -228,10 +228,10 @@ def exam_take_overview(request, pk, cid=None, passcode=None):
|
||||
question_answer_tuples.append((q, None))
|
||||
|
||||
if cid is not None:
|
||||
cid_user_exam = exam.get_or_create_cid_user_exam(user_user=request.user)
|
||||
else:
|
||||
c = CidUser.objects.filter(cid=cid).first()
|
||||
cid_user_exam = exam.get_or_create_cid_user_exam(cid_user=c)
|
||||
else:
|
||||
cid_user_exam = exam.get_or_create_cid_user_exam(user_user=request.user)
|
||||
|
||||
return render(
|
||||
request,
|
||||
@@ -259,10 +259,10 @@ def exam_take(request, pk, sk, cid=None, passcode=None):
|
||||
raise Http404("Error accessing exam")
|
||||
|
||||
if cid is not None:
|
||||
cid_user_exam = exam.get_or_create_cid_user_exam(user_user=request.user)
|
||||
else:
|
||||
c = CidUser.objects.filter(cid=cid).first()
|
||||
cid_user_exam = exam.get_or_create_cid_user_exam(cid_user=c)
|
||||
else:
|
||||
cid_user_exam = exam.get_or_create_cid_user_exam(user_user=request.user)
|
||||
|
||||
question = exam.exam_questions.all()[sk]
|
||||
|
||||
@@ -271,9 +271,9 @@ def exam_take(request, pk, sk, cid=None, passcode=None):
|
||||
pos = exam.get_question_index(question)
|
||||
|
||||
if cid is not None:
|
||||
answer = question.cid_user_answers.filter(user=request.user, exam=exam).first()
|
||||
else:
|
||||
answer = question.cid_user_answers.filter(cid=cid, exam=exam).first()
|
||||
else:
|
||||
answer = question.cid_user_answers.filter(user=request.user, exam=exam).first()
|
||||
|
||||
if request.method == "POST":
|
||||
if answer:
|
||||
@@ -284,9 +284,9 @@ def exam_take(request, pk, sk, cid=None, passcode=None):
|
||||
answer = form.save(commit=False)
|
||||
|
||||
if cid is not None:
|
||||
answer.user = request.user
|
||||
else:
|
||||
answer.cid = cid
|
||||
else:
|
||||
answer.user = request.user
|
||||
answer.question = question
|
||||
answer.exam = exam
|
||||
# answer.published_date = timezone.now()
|
||||
@@ -296,13 +296,13 @@ def exam_take(request, pk, sk, cid=None, passcode=None):
|
||||
cid_user_exam.save()
|
||||
|
||||
if cid is not None:
|
||||
kwargs = {"pk": pk}
|
||||
take_url = "physics:exam_take_user"
|
||||
finish_url = "physics:exam_take_overview_user"
|
||||
else:
|
||||
kwargs = {"pk": pk, "cid": cid, "passcode": passcode}
|
||||
take_url = "physics:exam_take"
|
||||
finish_url = "physics:exam_take_overview"
|
||||
else:
|
||||
kwargs = {"pk": pk}
|
||||
take_url = "physics:exam_take_user"
|
||||
finish_url = "physics:exam_take_overview_user"
|
||||
|
||||
if "next" in request.POST:
|
||||
return redirect(take_url, sk=pos + 1, **kwargs)
|
||||
|
||||
Reference in New Issue
Block a user