Пример #1
0
    def check_access(self, user=None):

        if (self.auth_required or self.permission) and user is None:
            raise UnauthorizedException("Method requires authenticated user")

        if user and user.is_admin():
            return
        
        if self.permission:
            for perm in self.permission:
                if not _get("user.permission.access", user)(unicode(perm)):
                    raise UnauthorizedException("Method requires permission: %s" % perm)
Пример #2
0
def uuid(s, user=None):

    if type(s) == _uuid.UUID:
        return s

    if s is None:
        return None

    if isinstance(s, unicode) and s.startswith("#"):
        
        if user is None:
            raise TypeError("Favorite is not availiable for this request")

        s = s[1:]
        s = _get("favorite.resolve", user)(s)
        
        if not s:
            raise TypeError("Unknown favorite")
            
    try:
        return  _uuid.UUID(s)  
    except:
        raise TypeError("Malformed UUID")