def status(): authz = request.authz enable_cache(vary_user=True) providers = sorted(oauth.remote_apps.values(), key=lambda p: p.label) providers = [{ 'name': p.name, 'label': p.label, 'login': url_for('.login', provider=p.name), } for p in providers] if get_config('PASSWORD_LOGIN'): providers.append({ 'name': 'password', 'label': 'Email', 'registration': get_config('PASSWORD_REGISTRATION'), 'login': url_for('.password_login'), 'register': url_for('roles_api.invite_email') }) return jsonify({ 'logged_in': authz.logged_in, 'api_key': authz.role.api_key if authz.logged_in else None, 'role': authz.role, 'roles': authz.roles, 'public_roles': get_public_roles(), 'permissions': { 'read': authz.collections[authz.READ], 'write': authz.collections[authz.WRITE] }, 'logout': url_for('.logout'), 'providers': providers, })
def status(): enable_cache(vary_user=True) return jsonify({ 'logged_in': authz.logged_in(), 'api_key': request.auth_role.api_key if authz.logged_in() else None, 'role': request.auth_role, 'roles': list(request.auth_roles), 'public_roles': authz.get_public_roles(), 'permissions': { 'read': authz.collections(authz.READ), 'write': authz.collections(authz.WRITE) }, 'logout': url_for('.logout') })
def __init__(self, name, data): self.name = six.text_type(name) self.data = data self.label = data.get('label', name) self.info_url = data.get('info_url') self.category = data.get('category') self.roles = [] self.entities_count = None self.public = False for role in dict_list(data, 'roles', 'role'): role_id = Role.load_id(role) if role_id is not None: self.roles.append(role_id) else: log.warning("Could not find role: %s", role) if role_id in get_public_roles(): self.public = True if not len(self.roles): raise ValueError("No roles for dataset: %s" % self.name) self._queries = dict_list(data, 'queries', 'query')
def status(): enable_cache(vary_user=True) providers = sorted(oauth.remote_apps.values(), key=lambda p: p.label) providers = [{ 'name': p.name, 'label': p.label, 'login': url_for('.login', provider=p.name), } for p in providers] authz = request.authz return jsonify({ 'logged_in': authz.logged_in, 'api_key': authz.role.api_key if authz.logged_in else None, 'role': authz.role, 'roles': authz.roles, 'public_roles': get_public_roles(), 'permissions': { 'read': authz.collections[authz.READ], 'write': authz.collections[authz.WRITE] }, 'logout': url_for('.logout'), 'providers': providers, })