Mercurial > kallithea
changeset 3735:8a40028eaf73 beta
fixed overwrite default user group permission flag
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Wed, 10 Apr 2013 18:03:11 +0200 |
parents | a8f520540ab0 |
children | 87e6960e250b |
files | rhodecode/model/forms.py rhodecode/model/permission.py |
diffstat | 2 files changed, 12 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/rhodecode/model/forms.py Wed Apr 10 14:33:04 2013 +0200 +++ b/rhodecode/model/forms.py Wed Apr 10 18:03:11 2013 +0200 @@ -319,6 +319,7 @@ filter_extra_fields = True overwrite_default_repo = v.StringBoolean(if_missing=False) overwrite_default_group = v.StringBoolean(if_missing=False) + overwrite_default_user_group = v.StringBoolean(if_missing=False) anonymous = v.StringBoolean(if_missing=False) default_repo_perm = v.OneOf(repo_perms_choices) default_group_perm = v.OneOf(group_perms_choices)
--- a/rhodecode/model/permission.py Wed Apr 10 14:33:04 2013 +0200 +++ b/rhodecode/model/permission.py Wed Apr 10 18:03:11 2013 +0200 @@ -30,7 +30,7 @@ from rhodecode.model import BaseModel from rhodecode.model.db import User, Permission, UserToPerm, UserRepoToPerm,\ - UserRepoGroupToPerm + UserRepoGroupToPerm, UserUserGroupToPerm from rhodecode.lib.utils2 import str2bool log = logging.getLogger(__name__) @@ -145,6 +145,16 @@ g2p.permission = _def self.sa.add(g2p) + if form_result['overwrite_default_user_group'] == True: + _def_name = form_result['default_user_group_perm'].split('usergroup.')[-1] + # groups + _def = Permission.get_by_key('usergroup.' + _def_name) + for g2p in self.sa.query(UserUserGroupToPerm)\ + .filter(UserUserGroupToPerm.user == perm_user)\ + .all(): + g2p.permission = _def + self.sa.add(g2p) + self.sa.commit() except (DatabaseError,): log.error(traceback.format_exc())