summaryrefslogtreecommitdiff
path: root/testapp/exam/forms.py
diff options
context:
space:
mode:
Diffstat (limited to 'testapp/exam/forms.py')
-rw-r--r--testapp/exam/forms.py98
1 files changed, 43 insertions, 55 deletions
diff --git a/testapp/exam/forms.py b/testapp/exam/forms.py
index a6844bb..f48a674 100644
--- a/testapp/exam/forms.py
+++ b/testapp/exam/forms.py
@@ -24,32 +24,23 @@ PWD_CHARS = letters + punctuation + digits
class UserRegisterForm(forms.Form):
"""A Class to create new form for User's Registration. It has the various fields and functions required to register a new user to the system"""
- username = forms.CharField(max_length=30,
- help_text='Letters, digits, period and underscores only.')
+ username = forms.CharField(max_length=30, help_text='Letters, digits, period and underscores only.')
email = forms.EmailField()
- password = forms.CharField(max_length=30,
- widget=forms.PasswordInput())
- confirm_password = forms.CharField(max_length=30,
- widget=forms.PasswordInput())
+ password = forms.CharField(max_length=30, widget=forms.PasswordInput())
+ confirm_password = forms.CharField(max_length=30, widget=forms.PasswordInput())
first_name = forms.CharField(max_length=30)
last_name = forms.CharField(max_length=30)
- roll_number = forms.CharField(max_length=30,
- help_text="Use a dummy if you don't have one.")
- institute = forms.CharField(max_length=128,
- help_text='Institute/Organization')
- department = forms.CharField(max_length=64,
- help_text='Department you work/study at')
- position = forms.CharField(max_length=64,
- help_text='Student/Faculty/Researcher/Industry/etc.')
+ roll_number = forms.CharField(max_length=30, help_text="Use a dummy if you don't have one.")
+ institute = forms.CharField(max_length=128, help_text='Institute/Organization')
+ department = forms.CharField(max_length=64, help_text='Department you work/study at')
+ position = forms.CharField(max_length=64, help_text='Student/Faculty/Researcher/Industry/etc.')
def clean_username(self):
u_name = self.cleaned_data["username"]
-
if u_name.strip(UNAME_CHARS):
msg = "Only letters, digits, period and underscore characters are "\
"allowed in username"
raise forms.ValidationError(msg)
-
try:
User.objects.get(username__exact = u_name)
raise forms.ValidationError("Username already exists.")
@@ -100,20 +91,18 @@ class UserLoginForm(forms.Form):
def clean(self):
super(UserLoginForm, self).clean()
- try:
- u_name, pwd = self.cleaned_data["username"], self.cleaned_data["password"]
- user = authenticate(username = u_name, password = pwd)
- except Exception:
- raise forms.ValidationError("Username and/or Password is not entered")
-
+ try:
+ u_name, pwd = self.cleaned_data["username"], self.cleaned_data["password"]
+ user = authenticate(username = u_name, password = pwd)
+ except Exception:
+ raise forms.ValidationError("Username and/or Password is not entered")
if not user:
raise forms.ValidationError("Invalid username/password")
-
return user
class QuizForm(forms.Form):
"""Creates a form to add or edit a Quiz. It has the related fields and functions required."""
-
+
start_date = forms.DateField(initial=datetime.date.today)
duration = forms.IntegerField()
active = forms.BooleanField(required = False)
@@ -124,43 +113,42 @@ class QuizForm(forms.Form):
start_date = self.cleaned_data["start_date"]
duration = self.cleaned_data["duration"]
active = self.cleaned_data['active']
- description = self.cleaned_data["description"]
+ description = self.cleaned_data["description"]
- new_quiz = Quiz()
- new_quiz.start_date=start_date
- new_quiz.duration=duration
- new_quiz.active=active
- new_quiz.description=description
- new_quiz.save()
+ new_quiz = Quiz()
+ new_quiz.start_date=start_date
+ new_quiz.duration=duration
+ new_quiz.active=active
+ new_quiz.description=description
+ new_quiz.save()
class QuestionForm(forms.Form):
- """Creates a form to add or edit a Question. It has the related fields and functions required."""
-
- summary = forms.CharField(widget = forms.Textarea(attrs={'cols': 40, 'rows': 1}))
- description = forms.CharField(widget = forms.Textarea(attrs={'cols': 40, 'rows': 1}))
- points = forms.FloatField()
- test = forms.CharField(widget = forms.Textarea(attrs={'cols': 40, 'rows': 1}))
- options = forms.CharField(widget = forms.Textarea(attrs={'cols': 40, 'rows': 1}),required=False)
- type = forms.CharField(max_length=8, widget=forms.Select(choices=QUESTION_TYPE_CHOICES))
- active = forms.BooleanField(required=False)
- tags = TagField(widget=TagAutocomplete(),required=False)
-
- def save(self):
+ """Creates a form to add or edit a Question. It has the related fields and functions required."""
+
+ summary = forms.CharField(widget = forms.Textarea(attrs={'cols': 40, 'rows': 1}))
+ description = forms.CharField(widget = forms.Textarea(attrs={'cols': 40, 'rows': 1}))
+ points = forms.FloatField()
+ test = forms.CharField(widget = forms.Textarea(attrs={'cols': 40, 'rows': 1}))
+ options = forms.CharField(widget = forms.Textarea(attrs={'cols': 40, 'rows': 1}),required=False)
+ type = forms.CharField(max_length=8, widget=forms.Select(choices=QUESTION_TYPE_CHOICES))
+ active = forms.BooleanField(required=False)
+ tags = TagField(widget=TagAutocomplete(),required=False)
+
+ def save(self):
summary = self.cleaned_data["summary"]
description = self.cleaned_data["description"]
points = self.cleaned_data['points']
- test = self.cleaned_data["test"]
+ test = self.cleaned_data["test"]
options = self.cleaned_data['options']
- type = self.cleaned_data["type"]
- active = self.cleaned_data["active"]
+ type = self.cleaned_data["type"]
+ active = self.cleaned_data["active"]
new_question = Question()
- new_question.summary = summary
- new_question.description = description
- new_question.points = points
- new_question.test = test
- new_question.options = options
- new_question.type = type
- new_question.active = active
- new_question.save()
-
+ new_question.summary = summary
+ new_question.description = description
+ new_question.points = points
+ new_question.test = test
+ new_question.options = options
+ new_question.type = type
+ new_question.active = active
+ new_question.save()