sdi/forms.py
branchanoop
changeset 93 505989755cd8
parent 90 1a6e1af98624
child 124 d4a7644e7fe8
equal deleted inserted replaced
92:9f305face605 93:505989755cd8
   166         if not authenticate(username=username, password=password):
   166         if not authenticate(username=username, password=password):
   167             raise forms.ValidationError("Invalid username or password")
   167             raise forms.ValidationError("Invalid username or password")
   168 
   168 
   169         return username
   169         return username
   170 
   170 
   171 def UserSelectForm(users):
   171 def UserSelectForm(users, post_data=None ):
   172 
   172 
   173     choices = [ (_.id, _.first_name) for _ in users ]
   173     choices = [ (_.id, _.first_name) for _ in users ]
   174     class myF(forms.Form):
   174     class myF(forms.Form):
   175 
   175 
   176         selected_users = forms.MultipleChoiceField(widget=forms.CheckboxSelectMultiple, choices=choices, required=False)
   176         selected_users = forms.MultipleChoiceField(widget=forms.CheckboxSelectMultiple, choices=choices, required=False)
   177 
   177 
   178     return myF()
   178         def clean_selected_users(self):
       
   179             selected_ids = self.cleaned_data['selected_users']
       
   180             return [ Registrant.objects.get(id=_) for _ in selected_ids ]
       
   181 
       
   182     return myF(post_data) if post_data else myF()
       
   183