Ejemplo n.º 1
0
 def hasAccess(self, member=False, branch="master", tag="", action="R"):
     from Phoenix.Models import Privilege
     from re import match
     from sqlobject import AND, OR, IN
     if not member:
         privileges = Privilege.selectBy(repository=self, public=True)
     else:
         privileges = Privilege.select(AND(
                         Privilege.q.repository == self.id,
                         OR(
                            Privilege.q.member == member.id,
                            IN(Privilege.q.role, member.roles),
                            Privilege.q.public == 1)))
     print privileges
     if privileges.count() > 0:
         for p in privileges:
             if branch and match(p.branch, branch) and action in p.crud:
                 return True
             if tag and match(p.tag, tag) and action in p.crud:
                 return True
     return False
Ejemplo n.º 2
0
 def hasAccess(self, member=False, branch="master", tag="", action="R"):
     from Phoenix.Models import Privilege
     from re import match
     from sqlobject import AND, OR, IN
     if not member:
         privileges = Privilege.selectBy(repository=self, public=True)
     else:
         privileges = Privilege.select(
             AND(
                 Privilege.q.repository == self.id,
                 OR(Privilege.q.member == member.id,
                    IN(Privilege.q.role, member.roles),
                    Privilege.q.public == 1)))
     print privileges
     if privileges.count() > 0:
         for p in privileges:
             if branch and match(p.branch, branch) and action in p.crud:
                 return True
             if tag and match(p.tag, tag) and action in p.crud:
                 return True
     return False