|
a/Allura/allura/controllers/auth.py |
|
b/Allura/allura/controllers/auth.py |
|
... |
|
... |
217 |
parts = parts[1:]
|
217 |
parts = parts[1:]
|
218 |
return '.'.join(reversed(parts))
|
218 |
return '.'.join(reversed(parts))
|
219 |
|
219 |
|
220 |
repos = []
|
220 |
repos = []
|
221 |
for p in user.my_projects():
|
221 |
for p in user.my_projects():
|
|
|
222 |
for p in [p] + p.direct_subprojects.all():
|
222 |
for app in p.app_configs:
|
223 |
for app in p.app_configs:
|
223 |
if not app.tool_name.lower() in ('git', 'hg', 'svn'):
|
224 |
if not app.tool_name.lower() in ('git', 'hg', 'svn'):
|
224 |
continue
|
225 |
continue
|
225 |
if not has_access(app, 'write', user, p):
|
226 |
if not has_access(app, 'write', user, p):
|
226 |
continue
|
227 |
continue
|
227 |
repos.append('/%s/%s/%s' % (
|
228 |
repos.append('/%s/%s/%s' % (
|
228 |
app.tool_name.lower(),
|
229 |
app.tool_name.lower(),
|
229 |
_unix_group_name(p.neighborhood, p.shortname),
|
230 |
_unix_group_name(p.neighborhood, p.shortname),
|
230 |
app.options['mount_point']))
|
231 |
app.options['mount_point']))
|
231 |
repos.sort()
|
232 |
repos.sort()
|
232 |
return repos
|
233 |
return repos
|
233 |
|
234 |
|
234 |
|
235 |
|
235 |
@expose('json:')
|
236 |
@expose('json:')
|