Single instance deployment.
[koed-quiz.git] / apps / quiz / views.py
index 18a268f..75b918d 100644 (file)
@@ -1,3 +1,7 @@
+# -*- coding: utf-8 -*-
+# This file is part of KOED-Quiz, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
+#
 from django.shortcuts import get_object_or_404, render, redirect
 
 from quiz.forms import QuestionForm
 from django.shortcuts import get_object_or_404, render, redirect
 
 from quiz.forms import QuestionForm
@@ -6,10 +10,10 @@ from quiz.models import Quiz
 
 def question(request, slug=None):
     if slug is None:
 
 def question(request, slug=None):
     if slug is None:
-        question = Quiz.current().start()
+        question = request.current_quiz.start()
         request.session['ticket'] = [request.path]
     else:
         request.session['ticket'] = [request.path]
     else:
-        question = get_object_or_404(Quiz.current().question_set, slug=slug)
+        question = get_object_or_404(request.current_quiz.question_set, slug=slug)
 
     ticket = request.session.get('ticket', [])
     valid = request.path in ticket
 
     ticket = request.session.get('ticket', [])
     valid = request.path in ticket
@@ -18,7 +22,7 @@ def question(request, slug=None):
         cur_index = ticket.index(request.path)
         if cur_index:
             previous_url = ticket[cur_index - 1]
         cur_index = ticket.index(request.path)
         if cur_index:
             previous_url = ticket[cur_index - 1]
-    else:
+    elif ticket:
         valid_url = ticket[-1]
 
     if request.method == 'POST' and valid:
         valid_url = ticket[-1]
 
     if request.method == 'POST' and valid:
@@ -54,6 +58,6 @@ def result(request, slug=None):
     elif ticket:
         valid_url = ticket[-1]
 
     elif ticket:
         valid_url = ticket[-1]
 
-    result = get_object_or_404(Quiz.current().result_set, slug=slug)
+    result = get_object_or_404(request.current_quiz.result_set, slug=slug)
     return render(request, "quiz/result_detail.html", locals())
 
     return render(request, "quiz/result_detail.html", locals())