@@ -268,42 +268,42 @@ class RepoGroupModel(object):
else:
# check if we have permissions to alter this usergroup's access
if not check_perms or HasUserGroupPermissionLevel('read')(member):
_set_perm_group(obj, users_group=member, perm=perm)
updates.append(obj)
# if it's not recursive call for all,repos,groups
# break the loop and don't proceed with other changes
if recursive not in ['all', 'repos', 'groups']:
break
return updates
def update(self, repo_group, kwargs):
def update(self, repo_group, repo_group_args):
try:
repo_group = RepoGroup.guess_instance(repo_group)
old_path = repo_group.full_path
# change properties
if 'group_description' in kwargs:
repo_group.group_description = kwargs['group_description']
if 'parent_group_id' in kwargs:
repo_group.parent_group_id = kwargs['parent_group_id']
if 'enable_locking' in kwargs:
repo_group.enable_locking = kwargs['enable_locking']
if 'group_description' in repo_group_args:
repo_group.group_description = repo_group_args['group_description']
if 'parent_group_id' in repo_group_args:
repo_group.parent_group_id = repo_group_args['parent_group_id']
if 'enable_locking' in repo_group_args:
repo_group.enable_locking = repo_group_args['enable_locking']
assert kwargs['parent_group_id'] != u'-1', kwargs # RepoGroupForm should have converted to None
repo_group.parent_group = RepoGroup.get(kwargs['parent_group_id'])
if 'group_name' in kwargs:
group_name = kwargs['group_name']
assert repo_group_args['parent_group_id'] != u'-1', repo_group_args # RepoGroupForm should have converted to None
repo_group.parent_group = RepoGroup.get(repo_group_args['parent_group_id'])
if 'group_name' in repo_group_args:
group_name = repo_group_args['group_name']
if kallithea.lib.utils2.repo_name_slug(group_name) != group_name:
raise Exception('invalid repo group name %s' % group_name)
repo_group.group_name = repo_group.get_new_name(group_name)
new_path = repo_group.full_path
Session().add(repo_group)
# iterate over all members of this groups and do fixes
# set locking if given
# if obj is a repoGroup also fix the name of the group according
# to the parent
# if obj is a Repo fix it's name
# this can be potentially heavy operation
Status change: