def list_users(self): from citadel.models.user import User user_ids = [ r.user_id for r in AppUserRelation.filter_by(appname=self.name).all() ] users = [User.get(id_) for id_ in user_ids] return users
def revoke_user(args, appname): """Revoke someone's permission to a app :<json string username: you know what this is :<json int user_id: must provide either username or user_id """ app = _get_app(appname) if args['username']: user = User.get_by_name(args['username']) else: user = User.get(args['user_id']) return app.revoke_user(user)
def grant_user(args, appname): """Grant permission to a user :<json string username: you know what this is :<json int user_id: must provide either username or user_id """ app = _get_app(appname) if args['username']: user = User.get_by_name(args['username']) else: user = User.get(args['user_id']) try: app.grant_user(user) except IntegrityError as e: pass return DEFAULT_RETURN_VALUE
def validate_user_id(id_): from citadel.models.user import User if not bool(User.get(id_)): raise ValidationError( 'User {} not found, needs to login first'.format(id_))