diff options
author | Marcin Kuzminski <marcin@python-works.com> | 2012-03-01 01:01:22 +0200 |
---|---|---|
committer | Marcin Kuzminski <marcin@python-works.com> | 2012-03-01 01:01:22 +0200 |
commit | 95a2aba751ebf5476b9064845c658df14f469dd2 (patch) | |
tree | 7e36b8c77ffd855314f79140523205bf4d3a9874 /rhodecode | |
parent | 1b948f0250276a4cde771d0e81fd35f609fbcf1d (diff) |
fixes issue when user tried to resubmit same permission into user/user_groups
--HG--
branch : beta
Diffstat (limited to 'rhodecode')
-rw-r--r-- | rhodecode/model/user.py | 13 | ||||
-rw-r--r-- | rhodecode/model/users_group.py | 8 |
2 files changed, 19 insertions, 2 deletions
diff --git a/rhodecode/model/user.py b/rhodecode/model/user.py index b87b7e01..8bb0f3b8 100644 --- a/rhodecode/model/user.py +++ b/rhodecode/model/user.py @@ -531,6 +531,13 @@ class UserModel(BaseModel): """ 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 @@ class UserModel(BaseModel): 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) diff --git a/rhodecode/model/users_group.py b/rhodecode/model/users_group.py index a23426c8..378edea5 100644 --- a/rhodecode/model/users_group.py +++ b/rhodecode/model/users_group.py @@ -172,6 +172,14 @@ class UsersGroupModel(BaseModel): 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 |