/
perm.py
28 lines (21 loc) · 823 Bytes
/
perm.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from trac.core import *
from trac.perm import IPermissionGroupProvider
from trac.util import TracError
class GodAuthPermissionGroupProvider(Component):
implements(IPermissionGroupProvider)
def get_permission_groups(self, username):
groups = ['anonymous']
if username == 'Anonymous':
return groups
# gah! we don't actually get passed the reqeust, since trac works in an
# odd way. this is going to require some re-engineering
#user = req.get_header("godauth-user")
#roles = req.get_header("godauth-roles")
user = None
roles = None
if user is not None:
if roles is not None:
roles = roles.split(',')
for role in roles:
groups.append(role)
return groups