Mercurial > kallithea
diff rhodecode/controllers/admin/repos.py @ 1015:65129c332d37 beta
#56 added ajax removal of users groups,
fixed permission edition templates by regular non admin users
found bugfixes in forms for users groups
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Wed, 09 Feb 2011 17:41:27 +0100 |
parents | 551c7d5ae89d |
children | 4f834b0abcd3 |
line wrap: on
line diff
--- a/rhodecode/controllers/admin/repos.py Wed Feb 09 15:16:28 2011 +0100 +++ b/rhodecode/controllers/admin/repos.py Wed Feb 09 17:41:27 2011 +0100 @@ -215,8 +215,8 @@ @HasPermissionAllDecorator('hg.admin') def delete_perm_user(self, repo_name): - """ - DELETE an existing repository permission user + """DELETE an existing repository permission user + :param repo_name: """ @@ -229,9 +229,24 @@ raise HTTPInternalServerError() @HasPermissionAllDecorator('hg.admin') - def repo_stats(self, repo_name): + def delete_perm_users_group(self, repo_name): + """DELETE an existing repository permission users group + + :param repo_name: """ - DELETE an existing repository statistics + try: + repo_model = RepoModel() + repo_model.delete_perm_users_group(request.POST, repo_name) + except Exception, e: + h.flash(_('An error occurred during deletion of repository' + ' users groups'), + category='error') + raise HTTPInternalServerError() + + @HasPermissionAllDecorator('hg.admin') + def repo_stats(self, repo_name): + """DELETE an existing repository statistics + :param repo_name: """ @@ -245,8 +260,8 @@ @HasPermissionAllDecorator('hg.admin') def repo_cache(self, repo_name): - """ - INVALIDATE existing repository cache + """INVALIDATE existing repository cache + :param repo_name: """ @@ -267,8 +282,9 @@ """GET /repos/repo_name/edit: Form to edit an existing item""" # url('edit_repo', repo_name=ID) repo_model = RepoModel() + c.repo_info = repo_model.get_by_repo_name(repo_name) + r = ScmModel().get(repo_name) - c.repo_info = repo_model.get_by_repo_name(repo_name) if c.repo_info is None: h.flash(_('%s repository is not mapped to db perhaps' @@ -293,7 +309,12 @@ c.stats_percentage = '%.2f' % ((float((last_rev)) / c.repo_last_rev) * 100) + c.users_array = repo_model.get_users_js() + c.users_groups_array = repo_model.get_users_groups_js() + defaults = c.repo_info.get_dict() + + #fill owner if c.repo_info.user: defaults.update({'user':c.repo_info.user.username}) else: @@ -301,11 +322,15 @@ .filter(User.admin == True).first().username defaults.update({'user':replacement_user}) - c.users_array = repo_model.get_users_js() - c.users_groups_array = repo_model.get_users_groups_js() + #fill repository users for p in c.repo_info.repo_to_perm: - defaults.update({'perm_%s' % p.user.username: + defaults.update({'u_perm_%s' % p.user.username: + p.permission.permission_name}) + + #fill repository groups + for p in c.repo_info.users_group_to_perm: + defaults.update({'g_perm_%s' % p.users_group.users_group_name: p.permission.permission_name}) return htmlfill.render(