app/soc/views/models/user.py
changeset 479 50bab5e71a66
parent 473 d01d5e3b0b5c
child 481 94834a1e6c01
--- a/app/soc/views/models/user.py	Thu Nov 13 19:41:16 2008 +0000
+++ b/app/soc/views/models/user.py	Thu Nov 13 20:46:41 2008 +0000
@@ -42,7 +42,7 @@
   """Django form displayed when creating a User.
   """
 
-  id = forms.EmailField(
+  email = forms.EmailField(
       label=soc.models.user.User.id.verbose_name,
       help_text=soc.models.user.User.id.help_text)
 
@@ -73,8 +73,8 @@
 
     return link_name
 
-  def clean_id(self):
-    form_id = users.User(email=self.cleaned_data.get('id'))
+  def clean_email(self):
+    form_id = users.User(email=self.cleaned_data.get('email'))
     key_name = self.data.get('key_name')
     if key_name:
       user = user_logic.logic.getFromKeyName(key_name)
@@ -88,7 +88,7 @@
         and user_logic.logic.getFromFields(email=new_email):
       raise forms.ValidationError("This account is already in use.")
 
-    return form_id
+    return self.cleaned_data.get('email')
 
 
 class EditForm(CreateForm):
@@ -173,12 +173,19 @@
     key_fields = dicts.zip(keys, values)
 
     return self.edit(request, page, params=params, **key_fields)
+  
+  def _editGet(self, request, entity, form):
+    """See base.View._editGet().
+    """
+    # fill in the email field with the data from the entity
+    form.fields['email'].initial = entity.id.email()
+    
 
   def _editPost(self, request, entity, fields):
     """See base.View._editPost().
     """
-
-    fields['email'] = fields['id'].email()
+    # fill in the id field with the user created from email
+    fields['id'] = users.User(fields['email'])
 
 
 view = View()