Mercurial > kallithea
changeset 822:d5a71348ee4d beta
small code fixes to repo model
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Thu, 09 Dec 2010 19:07:57 +0100 |
parents | 2b5f0e7678d4 |
children | 81e8dfa3beb5 |
files | rhodecode/model/repo.py |
diffstat | 1 files changed, 13 insertions(+), 15 deletions(-) [+] |
line wrap: on
line diff
--- a/rhodecode/model/repo.py Thu Dec 09 18:38:16 2010 +0100 +++ b/rhodecode/model/repo.py Thu Dec 09 19:07:57 2010 +0100 @@ -75,38 +75,36 @@ def update(self, repo_name, form_data): try: + cur_repo = self.get_by_repo_name(repo_name, cache=False) + user_model = UserModel(self.sa) #update permissions for username, perm in form_data['perms_updates']: r2p = self.sa.query(RepoToPerm)\ - .filter(RepoToPerm.user == UserModel(self.sa)\ - .get_by_username(username, cache=False))\ - .filter(RepoToPerm.repository == \ - self.get_by_repo_name(repo_name))\ + .filter(RepoToPerm.user == user_model.get_by_username(username))\ + .filter(RepoToPerm.repository == cur_repo)\ .one() - r2p.permission_id = self.sa.query(Permission).filter( - Permission.permission_name == - perm).one().permission_id + r2p.permission = self.sa.query(Permission)\ + .filter(Permission.permission_name == perm)\ + .scalar() self.sa.add(r2p) #set new permissions for username, perm in form_data['perms_new']: r2p = RepoToPerm() - r2p.repository = self.get_by_repo_name(repo_name) - r2p.user = UserModel(self.sa).get_by_username(username, cache=False) + r2p.repository = cur_repo + r2p.user = user_model.get_by_username(username, cache=False) - r2p.permission_id = self.sa.query(Permission).filter( - Permission.permission_name == perm)\ - .one().permission_id + r2p.permission = self.sa.query(Permission)\ + .filter(Permission.permission_name == perm)\ + .scalar() self.sa.add(r2p) #update current repo - cur_repo = self.get_by_repo_name(repo_name, cache=False) - for k, v in form_data.items(): if k == 'user': - cur_repo.user_id = v + cur_repo.user = user_model.get(v) else: setattr(cur_repo, k, v)