Mercurial > kallithea
changeset 2078:d4b6c8541bd9 beta
fixes issue when user tried to resubmit same permission into user/user_groups
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Thu, 01 Mar 2012 01:01:22 +0200 |
parents | 179604334d98 |
children | 477fe54b8af8 |
files | rhodecode/model/user.py rhodecode/model/users_group.py |
diffstat | 2 files changed, 19 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/rhodecode/model/user.py Thu Mar 01 00:30:41 2012 +0200 +++ b/rhodecode/model/user.py Thu Mar 01 01:01:22 2012 +0200 @@ -531,6 +531,13 @@ """ user = self.__get_user(user) perm = self.__get_perm(perm) + # if this permission is already granted skip it + _perm = UserToPerm.query()\ + .filter(UserToPerm.user == user)\ + .filter(UserToPerm.permission == perm)\ + .scalar() + if _perm: + return new = UserToPerm() new.user = user new.permission = perm @@ -546,7 +553,9 @@ user = self.__get_user(user) perm = self.__get_perm(perm) - obj = UserToPerm.query().filter(UserToPerm.user == user)\ - .filter(UserToPerm.permission == perm).scalar() + obj = UserToPerm.query()\ + .filter(UserToPerm.user == user)\ + .filter(UserToPerm.permission == perm)\ + .scalar() if obj: self.sa.delete(obj)
--- a/rhodecode/model/users_group.py Thu Mar 01 00:30:41 2012 +0200 +++ b/rhodecode/model/users_group.py Thu Mar 01 01:01:22 2012 +0200 @@ -172,6 +172,14 @@ users_group = self.__get_users_group(users_group) + # if this permission is already granted skip it + _perm = UsersGroupToPerm.query()\ + .filter(UsersGroupToPerm.users_group == users_group)\ + .filter(UsersGroupToPerm.permission == perm)\ + .scalar() + if _perm: + return + new = UsersGroupToPerm() new.users_group = users_group new.permission = perm