diff options
author | Stevan Radaković <stevan.radakovic@linaro.org> | 2013-03-28 13:11:09 +0100 |
---|---|---|
committer | Stevan Radaković <stevan.radakovic@linaro.org> | 2013-03-28 13:11:09 +0100 |
commit | edd66f777e3f5217bb36706813d83cb2bdd4be7e (patch) | |
tree | e9b0d15e0439d596daa04136f434b5fc212be5ba | |
parent | 1fcf4699040baf46a34fa1046514bbda7c3c275a (diff) |
Change default behaviour for group and repository ACL.
-rw-r--r-- | rhodecode/model/repo.py | 20 | ||||
-rw-r--r-- | rhodecode/model/repos_group.py | 22 |
2 files changed, 32 insertions, 10 deletions
diff --git a/rhodecode/model/repo.py b/rhodecode/model/repo.py index 4cf041a8..79d68e9f 100644 --- a/rhodecode/model/repo.py +++ b/rhodecode/model/repo.py @@ -512,13 +512,18 @@ class RepoModel(BaseModel): system_group_name = "%s-%s" % (repo.repo_name.rsplit("/",1)[0], repo.repo_id) repo_path = os.path.join(self.repos_path, repo.repo_name) - if user.username=="default": - if permission.permission_name in ["group.none", "group.read"]: + if permission.permission_name in ["group.none", "group.read"]: + if user.username=="default": os.chmod(repo_path, 0775) else: - os.chmod(repo_path, 0777) + SystemCommand.remove_user_from_group(system_group_name, + user.username) else: - SystemCommand.add_user_to_group(system_group_name, user.username) + if user.username=="default": + os.chmod(repo_path, 0777) + else: + SystemCommand.add_user_to_group(system_group_name, + user.username) def revoke_user_permission(self, repo, user): """ @@ -576,7 +581,12 @@ class RepoModel(BaseModel): system_group_name = "%s-%s" % (repo.repo_name.rsplit("/",1)[0], repo.repo_id) for user in group_name.members: - SystemCommand.add_user_to_group(system_group_name, user.username) + if permission.permission_name in ["group.none", "group.read"]: + SystemCommand.remove_user_from_group(system_group_name, + user.username) + else: + SystemCommand.add_user_to_group(system_group_name, + user.username) def revoke_users_group_permission(self, repo, group_name): """ diff --git a/rhodecode/model/repos_group.py b/rhodecode/model/repos_group.py index d75c9a4e..22b76f4a 100644 --- a/rhodecode/model/repos_group.py +++ b/rhodecode/model/repos_group.py @@ -369,13 +369,19 @@ class ReposGroupModel(BaseModel): system_group_name = "%s-%s" % (repos_group.group_name.rsplit("/",1)[0], repos_group.group_id) group_path = os.path.join(self.repos_path, repos_group.group_name) - if user.username=="default": - if permission.permission_name in ["group.none", "group.read"]: + + if permission.permission_name in ["group.none", "group.read"]: + if user.username=="default": os.chmod(group_path, 0775) else: - os.chmod(group_path, 0777) + SystemCommand.remove_user_from_group(system_group_name, + user.username) else: - SystemCommand.add_user_to_group(system_group_name, user.username) + if user.username=="default": + os.chmod(group_path, 0777) + else: + SystemCommand.add_user_to_group(system_group_name, + user.username) def revoke_user_permission(self, repos_group, user): """ @@ -434,8 +440,14 @@ class ReposGroupModel(BaseModel): system_group_name = "%s-%s" % (repos_group.group_name.rsplit("/",1)[0], repos_group.group_id) + for user in group_name.members: - SystemCommand.add_user_to_group(system_group_name, user.username) + if permission.permission_name in ["group.none", "group.read"]: + SystemCommand.remove_user_from_group(system_group_name, + user.username) + else: + SystemCommand.add_user_to_group(system_group_name, + user.username) def revoke_users_group_permission(self, repos_group, group_name): """ |