# HG changeset patch # User Marcin Kuzminski # Date 1345753366 -7200 # Node ID 09d8fec0295442d2f808666d9d74cd47a29acf6f # Parent 7949bc80b3b1fa7c5a22285f2fd5bd7376ce531a Implemented #532. - now displaying username + full name for mapped users from RhodeCode diff -r 7949bc80b3b1 -r 09d8fec02954 rhodecode/lib/helpers.py --- a/rhodecode/lib/helpers.py Wed Aug 22 13:30:52 2012 +0200 +++ b/rhodecode/lib/helpers.py Thu Aug 23 22:22:46 2012 +0200 @@ -416,9 +416,9 @@ return None -def person(author): +def person(author, show_attr="username_and_name"): # attr to return from fetched user - person_getter = lambda usr: usr.username + person_getter = lambda usr: getattr(usr, show_attr) # Valid email in the attribute passed, see if they're in the system _email = email(author) @@ -439,9 +439,9 @@ return _author -def person_by_id(id_): +def person_by_id(id_, show_attr="username_and_name"): # attr to return from fetched user - person_getter = lambda usr: usr.username + person_getter = lambda usr: getattr(usr, show_attr) #maybe it's an ID ? if str(id_).isdigit() or isinstance(id_, int): diff -r 7949bc80b3b1 -r 09d8fec02954 rhodecode/model/db.py --- a/rhodecode/model/db.py Wed Aug 22 13:30:52 2012 +0200 +++ b/rhodecode/model/db.py Thu Aug 23 22:22:46 2012 +0200 @@ -330,26 +330,35 @@ self._email = val.lower() if val else None @property + def firstname(self): + # alias for future + return self.name + + @property def emails(self): other = UserEmailMap.query().filter(UserEmailMap.user==self).all() return [self.email] + [x.email for x in other] @property + def username_and_name(self): + return '%s (%s %s)' % (self.username, self.firstname, self.lastname) + + @property def full_name(self): - return '%s %s' % (self.name, self.lastname) + return '%s %s' % (self.firstname, self.lastname) @property def full_name_or_username(self): - return ('%s %s' % (self.name, self.lastname) - if (self.name and self.lastname) else self.username) + return ('%s %s' % (self.firstname, self.lastname) + if (self.firstname and self.lastname) else self.username) @property def full_contact(self): - return '%s %s <%s>' % (self.name, self.lastname, self.email) + return '%s %s <%s>' % (self.firstname, self.lastname, self.email) @property def short_contact(self): - return '%s %s' % (self.name, self.lastname) + return '%s %s' % (self.firstname, self.lastname) @property def is_admin(self):