diff rhodecode/model/user.py @ 2479:9225597688f4 beta

Added validation into user email map
author Marcin Kuzminski <marcin@python-works.com>
date Mon, 18 Jun 2012 21:25:49 +0200
parents 8eab81115660
children b5b34d71b23b
line wrap: on
line diff
--- a/rhodecode/model/user.py	Mon Jun 18 00:41:10 2012 +0200
+++ b/rhodecode/model/user.py	Mon Jun 18 21:25:49 2012 +0200
@@ -29,9 +29,11 @@
 from pylons import url
 from pylons.i18n.translation import _
 
+from sqlalchemy.exc import DatabaseError
+from sqlalchemy.orm import joinedload
+
 from rhodecode.lib.utils2 import safe_unicode, generate_api_key
 from rhodecode.lib.caching_query import FromCache
-
 from rhodecode.model import BaseModel
 from rhodecode.model.db import User, UserRepoToPerm, Repository, Permission, \
     UserToPerm, UsersGroupRepoToPerm, UsersGroupToPerm, UsersGroupMember, \
@@ -40,9 +42,6 @@
 from rhodecode.lib.exceptions import DefaultUserException, \
     UserOwnsReposException
 
-from sqlalchemy.exc import DatabaseError
-
-from sqlalchemy.orm import joinedload
 
 log = logging.getLogger(__name__)
 
@@ -593,10 +592,14 @@
         :param user:
         :param email:
         """
+        from rhodecode.model import forms
+        form = forms.UserExtraEmailForm()()
+        data = form.to_python(dict(email=email))
         user = self._get_user(user)
+
         obj = UserEmailMap()
         obj.user = user
-        obj.email = email
+        obj.email = data['email']
         self.sa.add(obj)
         return obj