diff options
author | Marcin Kuzminski <marcin@python-works.com> | 2011-11-16 21:25:41 +0200 |
---|---|---|
committer | Marcin Kuzminski <marcin@python-works.com> | 2011-11-16 21:25:41 +0200 |
commit | 214d7513845077125e7e63f348debf6227c14278 (patch) | |
tree | 2487a1f59440c8a728a1ab23c4ad224cf7b53611 /rhodecode/model/user.py | |
parent | aa22c4e0b1d3d5ee0e982391be47fa7967a84742 (diff) |
fix fo empty email passed in attributes of ldap account.
It causes crash when creating auto account for ldap.
--HG--
branch : beta
Diffstat (limited to 'rhodecode/model/user.py')
-rw-r--r-- | rhodecode/model/user.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/rhodecode/model/user.py b/rhodecode/model/user.py index 992cef40..99725fde 100644 --- a/rhodecode/model/user.py +++ b/rhodecode/model/user.py @@ -183,13 +183,18 @@ class UserModel(BaseModel): from rhodecode.lib.auth import get_crypt_password log.debug('Checking for such ldap account in RhodeCode database') if self.get_by_username(username, case_insensitive=True) is None: + + # autogenerate email for ldap account without one + generate_email = lambda usr: '%s@ldap.account' % usr + try: new_user = User() + username = username.lower() # add ldap account always lowercase - new_user.username = username.lower() + new_user.username = username new_user.password = get_crypt_password(password) new_user.api_key = generate_api_key(username) - new_user.email = attrs['email'] + new_user.email = attrs['email'] or generate_email(username) new_user.active = attrs.get('active', True) new_user.ldap_dn = safe_unicode(user_dn) new_user.name = attrs['name'] |