|
a/Allura/allura/lib/macro.py |
|
b/Allura/allura/lib/macro.py |
|
... |
|
... |
6 |
import traceback
|
6 |
import traceback
|
7 |
|
7 |
|
8 |
import pymongo
|
8 |
import pymongo
|
9 |
from pylons import tmpl_context as c, app_globals as g
|
9 |
from pylons import tmpl_context as c, app_globals as g
|
10 |
from pylons import request
|
10 |
from pylons import request
|
|
|
11 |
from urlparse import urljoin
|
11 |
|
12 |
|
12 |
from . import helpers as h
|
13 |
from . import helpers as h
|
13 |
from . import security
|
14 |
from . import security
|
14 |
|
15 |
|
15 |
log = logging.getLogger(__name__)
|
16 |
log = logging.getLogger(__name__)
|
|
... |
|
... |
342 |
output = ''.join(
|
343 |
output = ''.join(
|
343 |
template_project_admins.substitute(dict(
|
344 |
template_project_admins.substitute(dict(
|
344 |
url=user_role.user.url(),
|
345 |
url=user_role.user.url(),
|
345 |
name=user_role.user.display_name))
|
346 |
name=user_role.user.display_name))
|
346 |
for user_role in admin_role.users_with_role())
|
347 |
for user_role in admin_role.users_with_role())
|
|
|
348 |
return u'<p>Project Admins:<br/>{}</p>'.format(output)
|
|
|
349 |
|
|
|
350 |
template_members = string.Template('<a href="$url">Members</a><br/>')
|
|
|
351 |
@macro()
|
|
|
352 |
def members():
|
|
|
353 |
output = ''.join(
|
|
|
354 |
template_members.substitute(dict(
|
|
|
355 |
url=urljoin(c.project.url(),'_members'),)))
|
347 |
return u'<p>{}</p>'.format(output)
|
356 |
return u'<p>{}</p>'.format(output)
|