content/forms.py
author Shantanu <shantanu@fossee.in>
Thu, 24 Sep 2009 15:20:30 +0530
changeset 5 7358eeae14d8
permissions -rw-r--r--
Rough website for Scipy.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     1
from django import forms
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     2
from django.utils.translation import ugettext_lazy as _
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     3
from content.models import Participant
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     4
from django.contrib.auth.models import User
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     5
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     6
class Participantform(forms.ModelForm):
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     7
  class Meta:
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     8
    model = Participant
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     9
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    10
class Registerform(forms.Form):
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    11
  """
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    12
  Temporary Registration Form.
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    13
  """   
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    14
  PARTICIPANT_CATEGORY = (
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    15
		('Student','Student'),
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    16
    ('Corporate Staff','Corporate Staff'),
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    17
    ('Teacher','Teacher'),
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    18
    ('Others','Others'),
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    19
	)
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    20
  username = forms.CharField(max_length=30,
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    21
                                 label="User Name")
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    22
  email = forms.EmailField(max_length=75,
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    23
                            label=u'Email address')
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    24
  pass1 = forms.CharField(max_length=50,widget=forms.PasswordInput,
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    25
                            label=_("Enter New Password"),
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    26
                            )
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    27
  pass2 = forms.CharField(max_length=50,widget=forms.PasswordInput,
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    28
                            label=_("Enter New Password Again"),
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    29
                            )
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    30
  category = forms.ChoiceField(label=_("Category"),
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    31
                                   choices=PARTICIPANT_CATEGORY)
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    32
  organiztion = forms.CharField(max_length=200,
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    33
                               label=_("Organisation"),
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    34
                               required=False)  
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    35
  attending_conf = forms.BooleanField(label=_("Will you attend conference?"))
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    36
  attending_tut = forms.BooleanField(label=_("Will you attend tutorial session?"),
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    37
                     required=False)
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    38
  attending_sprint = forms.BooleanField(label=_("Will you attend sprint?"),
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    39
                    required=False)              
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    40
  
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    41
  def save(self):
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    42
    '''To create a user and save additional information
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    43
    related to user.
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    44
    '''
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    45
    profile=self.cleaned_data        
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    46
    new_user = User.objects.create_user(username=profile.get('username'),
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    47
                          password=profile.get('pass1'),
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    48
                          email=profile.get('email'))
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    49
    participant = Participantform()
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    50
    participant.username = profile.get('username')
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    51
    participant.category = profile.get('category')
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    52
    participant.organiztion = profile.get('organization')
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    53
    participant.attending_conf = profile.get('attending_conf')
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    54
    participant.attending_tut = profile.get('attending_tut')
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    55
    participant.attending_sprint = profile.get('attending_sprint')
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    56
    participant.save()
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    57
    return new_user
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    58
    
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    59
class LoginForm(forms.Form):
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    60
	username = forms.CharField(max_length=30, label=_(u'username'))
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    61
	password = forms.CharField(max_length=50,widget=forms.PasswordInput,
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    62
                            label=_("Enter New Password")
7358eeae14d8 Rough website for Scipy.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    63
                            )