--- a/event/views.py Thu Apr 22 01:41:43 2010 +0530
+++ b/event/views.py Thu Apr 22 02:13:32 2010 +0530
@@ -7,7 +7,7 @@
from offline.event.models import Event
from offline.event.forms import EventCreateForm
-from offline.quiz.models import Quiz
+from offline.quiz.models import Quiz, QuestionBank
from offline.quiz.utils import correct_quiz
num2name = {"11" : "Day 1 Quiz 1",
@@ -160,6 +160,7 @@
event = Event.objects.all()[0]
except IndexError:
return redirect('/event/create/%s'%ADMIN_KEY)
+
try:
quiz = Quiz.objects.get(event=event, key=quiz_key)
except Quiz.DoesNotExist:
@@ -175,5 +176,35 @@
ans.save()
return redirect("/quiz/toppers/%s/%s"%(ADMIN_KEY, quiz.quiz_num))
else:
- return render_to_response("user_dump.html", {"quiz":quiz, "quiz_name":quiz_name})
+ return render_to_response("user_dump.html", {"quiz":quiz, "quiz_name":quiz_name, "admin_key":ADMIN_KEY})
+
+def que_dump(request, admin_key, que_id):
+ """ check for admin key
+ then simply render all answers corresponding to the question.
+ """
+
+ if not admin_key == ADMIN_KEY:
+ raise Http404
+
+ try:
+ event = Event.objects.all()[0]
+ except IndexError:
+ return redirect('/event/create/%s'%ADMIN_KEY)
+ try:
+ question = QuestionBank.objects.get(id=que_id)
+ except QuestionBank.DoesNotExist:
+ raise Http404
+
+ quiz_num = question.quiz_num
+ quiz_name = num2name[quiz_num]
+
+ answers = question.answer.all()
+
+ if request.method == "POST":
+ for ans in answers:
+ ans.is_correct = True if str(ans.id) in request.POST else False
+ ans.save()
+ return redirect("/quiz/toppers/%s/%s"%(ADMIN_KEY, quiz_num))
+ else:
+ return render_to_response("que_dump.html", {"quiz_name":quiz_name, "answers":answers})
Binary file offline.db.bak has changed
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/templates/que_dump.html Thu Apr 22 02:13:32 2010 +0530
@@ -0,0 +1,23 @@
+{% extends 'base.html' %}
+{% block content %}
+List of answers submitted for {{quiz_name}} of {{event.title}}<br />
+<form action="" method="post">
+<table cellspacing="5" cellpadding="3">
+ <tr>
+ <td>User</td>
+ <td>Submitted Answer</td>
+ <td> Is Correct</td>
+ </tr>
+
+ {% for ans in answers %}
+ <tr>
+ <td>{{ans.quiz.all.0.user.get_full_name}}</td>
+ <td>{{ans.submitted_ans}}</td>
+ <td><input name="{{ans.id}}" type="checkbox" {% if ans.is_correct %}checked="yes"{%endif%}></td>
+ </tr>
+ {% endfor %}
+</table><br />
+ <input type="submit" value="save">
+</form>
+{% endblock %}
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/templates/user_dump.html Thu Apr 22 02:13:32 2010 +0530
@@ -0,0 +1,23 @@
+{% extends 'base.html' %}
+{% block content %}
+List of answers submitted by {{quiz.user.get_full_name}} for {{quiz_name}} of {{event.title}}<br />
+<form action="" method="post">
+<table cellspacing="5" cellpadding="3">
+ <tr>
+ <td>Question</td>
+ <td>Submitted Answer</td>
+ <td> Is Correct</td>
+ </tr>
+
+ {% for ans in quiz.que_answered.all %}
+ <tr>
+ <td><a href="/quiz/que_dump/{{admin_key}}/{{ans.question.id}}">{{ans.question.description|slice:":50"}}</a></td>
+ <td>{{ans.submitted_ans}}</td>
+ <td><input name="{{ans.question.id}}" type="checkbox" {% if ans.is_correct %}checked="yes"{%endif%}></td>
+ </tr>
+ {% endfor %}
+</table><br />
+ <input type="submit" value="save">
+</form>
+{% endblock %}
+
--- a/urls.py Thu Apr 22 01:41:43 2010 +0530
+++ b/urls.py Thu Apr 22 02:13:32 2010 +0530
@@ -38,5 +38,6 @@
(r'^quiz/complete/$', quiz_views.quiz_complete),
(r'^quiz/toppers/(\w+)/(\w+)$', event_views.list_toppers),
- (r'^quiz/user_dump/(\w+)/(\w+)/(\w+)', event_views.user_dump),
+ (r'^quiz/user_dump/(\w+)/(\w+)/(\w+)$', event_views.user_dump),
+ (r'^quiz/que_dump/(\w+)/(\w+)$', event_views.que_dump),
)