--- a/quiz/utils.py Wed Apr 21 19:52:51 2010 +0530
+++ b/quiz/utils.py Wed Apr 21 21:53:33 2010 +0530
@@ -1,6 +1,30 @@
import string
import random
+import re
def gen_key(no_of_chars):
allowed_chars = string.digits+string.uppercase
return ''.join([random.choice(allowed_chars) for i in range(no_of_chars)])
+
+def correct_quiz(quiz):
+ """ read each submitted answer and update the is_correct variable.
+ """
+
+ for answer in quiz.que_answered.all():
+
+ expected_ans = answer.question.expected_ans
+
+ ans_regex_patterns = [ r"\s*".join(ans_pattern.split()) for ans_pattern in expected_ans.split("\n") ]
+ for pattern in ans_regex_patterns:
+ if re.findall(pattern, answer.submitted_ans):
+ answer.is_correct = True
+ answer.save()
+ break
+
+"""
+we send quiz objects filtered by event and quiz num one by and update answer objects in all corresponding answers
+later while retreving, we filter on user also ( for displaying in the table)
+the table is by default in sorted fashion and also has the links.
+seperate table for each quiz.
+"""
+