Mercurial > public > src > rhodecode
comparison pylons_app/lib/auth.py @ 412:ca54622e39a1
Added separate create repository views for non administrative users.
Fixed permission issue with private repos
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Sun, 01 Aug 2010 17:08:58 +0200 |
parents | bd8b25ad058d |
children | 55377fdc1fc6 |
comparison
equal
deleted
inserted
replaced
411:86a25ad59766 | 412:ca54622e39a1 |
---|---|
138 .filter(Repo2Perm.user_id == sa.query(User).filter(User.username == | 138 .filter(Repo2Perm.user_id == sa.query(User).filter(User.username == |
139 'default').one().user_id).all() | 139 'default').one().user_id).all() |
140 | 140 |
141 if user.is_admin: | 141 if user.is_admin: |
142 user.permissions['global'].add('hg.admin') | 142 user.permissions['global'].add('hg.admin') |
143 #admin have all rights full | 143 #admin have all rights set to admin |
144 for perm in default_perms: | 144 for perm in default_perms: |
145 p = 'repository.admin' | 145 p = 'repository.admin' |
146 user.permissions['repositories'][perm.Repo2Perm.repository.repo_name] = p | 146 user.permissions['repositories'][perm.Repo2Perm.repository.repo_name] = p |
147 | 147 |
148 else: | 148 else: |
149 user.permissions['global'].add('repository.create') | 149 user.permissions['global'].add('repository.create') |
150 for perm in default_perms: | 150 for perm in default_perms: |
151 if perm.Repository.private: | 151 if perm.Repository.private and not perm.Repository.user_id == user.user_id: |
152 #disable defaults for private repos, | 152 #disable defaults for private repos, |
153 p = 'repository.none' | 153 p = 'repository.none' |
154 elif perm.Repository.user_id == user.user_id: | 154 elif perm.Repository.user_id == user.user_id: |
155 #set admin if owner | 155 #set admin if owner |
156 p = 'repository.admin' | 156 p = 'repository.admin' |
184 if user.is_authenticated: | 184 if user.is_authenticated: |
185 user = fill_data(user) | 185 user = fill_data(user) |
186 user = fill_perms(user) | 186 user = fill_perms(user) |
187 session['hg_app_user'] = user | 187 session['hg_app_user'] = user |
188 session.save() | 188 session.save() |
189 print user.permissions | |
189 return user | 190 return user |
190 | 191 |
191 #=============================================================================== | 192 #=============================================================================== |
192 # CHECK DECORATORS | 193 # CHECK DECORATORS |
193 #=============================================================================== | 194 #=============================================================================== |