changeset 1060:97ed582ea86e beta

permission fixes for forking
author Marcin Kuzminski <marcin@python-works.com>
date Wed, 16 Feb 2011 12:18:18 +0100
parents 520d27f40b51
children 9bb609d164e4
files rhodecode/controllers/settings.py
diffstat 1 files changed, 5 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/rhodecode/controllers/settings.py	Tue Feb 15 23:19:01 2011 +0100
+++ b/rhodecode/controllers/settings.py	Wed Feb 16 12:18:18 2011 +0100
@@ -37,7 +37,7 @@
 import rhodecode.lib.helpers as h
 
 from rhodecode.lib.auth import LoginRequired, HasRepoPermissionAllDecorator, \
-    NotAnonymous
+    HasRepoPermissionAnyDecorator, NotAnonymous
 from rhodecode.lib.base import BaseRepoController, render
 from rhodecode.lib.utils import invalidate_cache, action_logger
 
@@ -161,7 +161,8 @@
         return redirect(url('home'))
 
     @NotAnonymous()
-    @HasRepoPermissionAllDecorator('repository.read')
+    @HasRepoPermissionAnyDecorator('repository.read', 'repository.write',
+                                   'repository.admin')
     def fork(self, repo_name):
         repo_model = RepoModel()
         c.repo_info = repo = repo_model.get_by_repo_name(repo_name)
@@ -177,7 +178,8 @@
         return render('settings/repo_fork.html')
 
     @NotAnonymous()
-    @HasRepoPermissionAllDecorator('repository.read')
+    @HasRepoPermissionAnyDecorator('repository.read', 'repository.write',
+                                   'repository.admin')
     def fork_create(self, repo_name):
         repo_model = RepoModel()
         c.repo_info = repo_model.get_by_repo_name(repo_name)