# HG changeset patch # User Marcin Kuzminski # Date 2012-01-04 01:59:52 # Node ID 9e53425ca8248a201f2aea847dbe59d118d61681 # Parent 6b318706f712c8e8b0f25043cbaa6dfdd25b4d14 backporting fix for issue #298 conflicting-e-mail-addresses-for-ldap diff --git a/rhodecode/model/db.py b/rhodecode/model/db.py --- a/rhodecode/model/db.py +++ b/rhodecode/model/db.py @@ -270,7 +270,7 @@ class User(Base, BaseModel): admin = Column("admin", Boolean(), nullable=True, unique=None, default=False) name = Column("name", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None) lastname = Column("lastname", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None) - email = Column("email", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None) + _email = Column("email", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None) last_login = Column("last_login", DateTime(timezone=False), nullable=True, unique=None, default=None) ldap_dn = Column("ldap_dn", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None) api_key = Column("api_key", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None) @@ -284,6 +284,18 @@ class User(Base, BaseModel): group_member = relationship('UsersGroupMember', cascade='all') + @hybrid_property + def email(self): + return self._email + + @email.setter + def email(self, val): + self._email = val.lower() if val else None + + @property + def full_name(self): + return '%s %s' % (self.name, self.lastname) + @property def full_contact(self): return '%s %s <%s>' % (self.name, self.lastname, self.email)