Mercurial > kallithea
comparison rhodecode/model/repos_group.py @ 3348:6f82f8bdd22c
recursive mode of setting permission should skip private repositories, they should remain private, it's proper thing to do !
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Fri, 25 Jan 2013 00:30:25 +0100 |
parents | abd49f6f5805 |
children | b4daef4cc26d 702da441f5c4 |
comparison
equal
deleted
inserted
replaced
3347:055dc1ab768c | 3348:6f82f8bdd22c |
---|---|
173 if isinstance(obj, RepoGroup): | 173 if isinstance(obj, RepoGroup): |
174 ReposGroupModel().grant_user_permission( | 174 ReposGroupModel().grant_user_permission( |
175 repos_group=obj, user=user, perm=perm | 175 repos_group=obj, user=user, perm=perm |
176 ) | 176 ) |
177 elif isinstance(obj, Repository): | 177 elif isinstance(obj, Repository): |
178 #we do this ONLY IF repository is non-private | |
179 if obj.private: | |
180 return | |
181 | |
178 # we set group permission but we have to switch to repo | 182 # we set group permission but we have to switch to repo |
179 # permission | 183 # permission |
180 perm = perm.replace('group.', 'repository.') | 184 perm = perm.replace('group.', 'repository.') |
181 RepoModel().grant_user_permission( | 185 RepoModel().grant_user_permission( |
182 repo=obj, user=user, perm=perm | 186 repo=obj, user=user, perm=perm |
197 updates = [] | 201 updates = [] |
198 log.debug('Now updating permissions for %s in recursive mode:%s' | 202 log.debug('Now updating permissions for %s in recursive mode:%s' |
199 % (repos_group, recursive)) | 203 % (repos_group, recursive)) |
200 | 204 |
201 for obj in repos_group.recursive_groups_and_repos(): | 205 for obj in repos_group.recursive_groups_and_repos(): |
206 #obj is an instance of a group or repositories in that group | |
202 if not recursive: | 207 if not recursive: |
203 obj = repos_group | 208 obj = repos_group |
204 | 209 |
205 # update permissions | 210 # update permissions |
206 for member, perm, member_type in perms_updates: | 211 for member, perm, member_type in perms_updates: |