PageRenderTime 52ms CodeModel.GetById 25ms app.highlight 15ms RepoModel.GetById 0ms app.codeStats 0ms

/shabti/templates/shenu/+package+/lib/auth/permissions.py_tmpl

https://bitbucket.org/gawel/shabti
Unknown | 31 lines | 22 code | 9 blank | 0 comment | 0 complexity | 0ed61b06f95b4ba6309b49676c4a26f1 MD5 | raw file
 1from {{package}}.lib.auth import get_user
 2from {{package}} import model
 3
 4# Common permissions. Permission classes must have a 'check' method which returns True or False.
 5
 6class SignedIn(object):
 7
 8    def check(self):
 9        return (get_user() is not None)
10
11class InGroup(object):
12
13    def __init__(self, group_name):
14        self.group_name = group_name 
15
16    def check(self):
17        group = model.Group.filter_by(name = self.group_name, active = True)
18        if group and get_user() in group.members:
19            return True
20        return False
21
22class HasPermission(object):
23
24    def __init__(self, permission):
25        self.permission = permission
26
27    def check(self):
28        user = get_user()
29        if user and user.has_permission(self.permission):
30            return True
31        return False