Mercurial > kallithea
changeset 2508:43cb5b6047fd beta
Added functions for getting API data to repo and user models
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Tue, 26 Jun 2012 02:21:06 +0200 |
parents | 374693af2849 |
children | 955956f4bdda |
files | rhodecode/model/db.py |
diffstat | 1 files changed, 41 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/rhodecode/model/db.py Mon Jun 25 23:20:27 2012 +0200 +++ b/rhodecode/model/db.py Tue Jun 26 02:21:06 2012 +0200 @@ -427,6 +427,26 @@ Session.add(self) log.debug('updated user %s lastlogin' % self.username) + def get_api_data(self): + """ + Common function for generating user related data for API + """ + user = self + data = dict( + id=user.user_id, + username=user.username, + api_key=user.api_key, + firstname=user.name, + lastname=user.lastname, + email=user.email, + emails=user.emails, + active=user.active, + admin=user.admin, + ldap_dn=user.ldap_dn, + last_login=user.last_login, + ) + return data + def __json__(self): return dict( user_id=self.user_id, @@ -734,6 +754,27 @@ return is_valid_repo(repo_name, cls.base_path()) + def get_api_data(self): + """ + Common function for generating repo api data + + """ + repo = self + data = dict( + id=repo.repo_id, + repo_name=repo.repo_name, + repo_type=repo.repo_type, + clone_uri=repo.clone_uri, + private=repo.private, + created_on=repo.created_on, + description=repo.description, + landing_rev=repo.landing_rev, + owner=repo.user.username, + fork_of=repo.fork.repo_name if repo.fork else None + ) + + return data + #========================================================================== # SCM PROPERTIES #==========================================================================