Fix some stuff with logins and permissions, add tags to the mode.

This commit is contained in:
yackob03 2013-09-25 16:46:28 -04:00
parent 744c73509b
commit 08446ef59e
10 changed files with 94 additions and 34 deletions

View file

@ -2,6 +2,7 @@ import logging
from flask.ext.principal import identity_loaded, UserNeed, Permission
from collections import namedtuple
from functools import partial
from data import model
from app import app
@ -11,7 +12,8 @@ from auth import get_authenticated_user, get_validated_token
logger = logging.getLogger(__name__)
_RepositoryNeed = namedtuple('repository', ['namespace', 'name', 'role'])
_ResourceNeed = namedtuple('resource', ['type', 'namespace', 'name', 'role'])
_RepositoryNeed = partial(_ResourceNeed, 'repository')
class ModifyRepositoryPermission(Permission):
@ -38,6 +40,7 @@ class UserPermission(Permission):
@identity_loaded.connect_via(app)
def on_identity_loaded(sender, identity):
logger.debug('Identity loaded: %s' % identity)
# We have verified an identity, load in all of the permissions
if get_authenticated_user():
identity.provides.add(UserNeed(get_authenticated_user().username))