Changeset - 9e76876a0690
[Not reviewed]
beta
0 1 0
Marcin Kuzminski - 13 years ago 2013-01-25 00:13:01
marcin@python-works.com
Global permission update with "overwrite existing settings" shouldn't override private repositories.
It's to confusing to users, and private repos should be always private
1 file changed with 3 insertions and 0 deletions:
0 comments (0 inline, 0 general)
rhodecode/model/permission.py
Show inline comments
 
@@ -109,24 +109,27 @@ class PermissionModel(BaseModel):
 
                    p.permission = self.get_permission_by_name(
 
                                        form_result['default_fork'])
 
                    self.sa.add(p)
 

	
 
            #stage 2 update all default permissions for repos if checked
 
            if form_result['overwrite_default_repo'] == True:
 
                _def_name = form_result['default_repo_perm'].split('repository.')[-1]
 
                _def = self.get_permission_by_name('repository.' + _def_name)
 
                # repos
 
                for r2p in self.sa.query(UserRepoToPerm)\
 
                               .filter(UserRepoToPerm.user == perm_user)\
 
                               .all():
 

	
 
                    #don't reset PRIVATE repositories
 
                    if r2p.repository.private is False:
 
                    r2p.permission = _def
 
                    self.sa.add(r2p)
 

	
 
            if form_result['overwrite_default_group'] == True:
 
                _def_name = form_result['default_group_perm'].split('group.')[-1]
 
                # groups
 
                _def = self.get_permission_by_name('group.' + _def_name)
 
                for g2p in self.sa.query(UserRepoGroupToPerm)\
 
                               .filter(UserRepoGroupToPerm.user == perm_user)\
 
                               .all():
 
                    g2p.permission = _def
 
                    self.sa.add(g2p)
0 comments (0 inline, 0 general)