mirror of
https://github.com/getredash/redash.git
synced 2025-12-25 01:03:20 -05:00
Renames
This commit is contained in:
@@ -4,7 +4,7 @@ from flask import make_response
|
||||
|
||||
from redash.utils import json_dumps
|
||||
from redash.handlers.base import org_scoped_rule
|
||||
from redash.handlers.access import AccessPermissionListResource, AccessPermissionResource
|
||||
from redash.handlers.permissions import ObjectPermissionsListResource, CheckPermissionResource
|
||||
from redash.handlers.alerts import AlertResource, AlertListResource, AlertSubscriptionListResource, AlertSubscriptionResource
|
||||
from redash.handlers.dashboards import DashboardListResource, RecentDashboardsResource, DashboardResource, DashboardShareResource
|
||||
from redash.handlers.data_sources import DataSourceTypeListResource, DataSourceListResource, DataSourceSchemaResource, DataSourceResource, DataSourcePauseResource, DataSourceTestResource
|
||||
@@ -72,9 +72,8 @@ api.add_org_resource(MyQueriesResource, '/api/queries/my', endpoint='my_queries'
|
||||
api.add_org_resource(QueryRefreshResource, '/api/queries/<query_id>/refresh', endpoint='query_refresh')
|
||||
api.add_org_resource(QueryResource, '/api/queries/<query_id>', endpoint='query')
|
||||
|
||||
api.add_org_resource(AccessPermissionListResource, '/api/<object_type>/<object_id>/acl', endpoint='list_access')
|
||||
api.add_org_resource(AccessPermissionResource, '/api/<object_type>/<object_id>/acl', endpoint='manage_access')
|
||||
api.add_org_resource(AccessPermissionResource, '/api/<object_type>/<object_id>/acl/<access_type>', endpoint='attempt_access')
|
||||
api.add_org_resource(ObjectPermissionsListResource, '/api/<object_type>/<object_id>/acl', endpoint='object_permissions')
|
||||
api.add_org_resource(CheckPermissionResource, '/api/<object_type>/<object_id>/acl/<access_type>', endpoint='check_permissions')
|
||||
|
||||
api.add_org_resource(QueryResultListResource, '/api/query_results', endpoint='query_results')
|
||||
api.add_org_resource(QueryResultResource,
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
import logging
|
||||
from redash.handlers.base import BaseResource
|
||||
from redash.models import AccessPermission, Query, Dashboard
|
||||
from redash.permissions import require_admin_or_owner
|
||||
@@ -12,22 +11,20 @@ object_types_to_classes = {
|
||||
}
|
||||
|
||||
|
||||
def get_class_for_object_type(object_type):
|
||||
clazz = object_types_to_classes.get(object_type)
|
||||
if not clazz:
|
||||
def get_model_for_object_type(object_type):
|
||||
model = object_types_to_classes.get(object_type)
|
||||
if not model:
|
||||
abort(404)
|
||||
return clazz
|
||||
return model
|
||||
|
||||
|
||||
def get_classname_for_object_type(object_type):
|
||||
clazz = get_class_for_object_type(object_type)
|
||||
return clazz.__name__
|
||||
model = get_model_for_object_type(object_type)
|
||||
return model.__name__
|
||||
|
||||
|
||||
class AccessPermissionListResource(BaseResource):
|
||||
|
||||
class ObjectPermissionsListResource(BaseResource):
|
||||
def get(self, object_type, object_id):
|
||||
|
||||
# convert API resource to model class, e.g., 'queries' to 'Query'
|
||||
object_type = get_classname_for_object_type(object_type)
|
||||
|
||||
@@ -42,17 +39,13 @@ class AccessPermissionListResource(BaseResource):
|
||||
|
||||
return result
|
||||
|
||||
|
||||
class AccessPermissionResource(BaseResource):
|
||||
|
||||
def post(self, object_type, object_id):
|
||||
|
||||
# convert API resource to model class, e.g., 'queries' to 'Query'
|
||||
clazz = get_class_for_object_type(object_type)
|
||||
model = get_model_for_object_type(object_type)
|
||||
object_type = get_classname_for_object_type(object_type)
|
||||
|
||||
# make sure the current user is permitted to perform this operation
|
||||
target_object = clazz.select().where(clazz.id == object_id).get()
|
||||
target_object = model.select().where(model.id == object_id).get()
|
||||
require_admin_or_owner(target_object.user.id)
|
||||
|
||||
req = request.get_json(True)
|
||||
@@ -72,13 +65,12 @@ class AccessPermissionResource(BaseResource):
|
||||
return {'result': 'permission_added'}
|
||||
|
||||
def delete(self, object_type, object_id):
|
||||
|
||||
# convert API resource to model class, e.g., 'queries' to 'Query'
|
||||
clazz = get_class_for_object_type(object_type)
|
||||
model = get_model_for_object_type(object_type)
|
||||
object_type = get_classname_for_object_type(object_type)
|
||||
|
||||
# make sure the current user is permitted to perform this operation
|
||||
target_object = clazz.select().where(clazz.id == object_id).get()
|
||||
target_object = model.select().where(model.id == object_id).get()
|
||||
require_admin_or_owner(target_object.user.id)
|
||||
|
||||
req = request.get_json(True)
|
||||
@@ -87,13 +79,16 @@ class AccessPermissionResource(BaseResource):
|
||||
|
||||
deleted = AccessPermission.revoke_permission(object_type=object_type,
|
||||
object_id=object_id, grantee=grantee, access_type=access_type)
|
||||
|
||||
if deleted:
|
||||
deleted = deleted.to_dict()
|
||||
|
||||
result = {'deleted': deleted}
|
||||
return result
|
||||
|
||||
def get(self, object_type, object_id, access_type):
|
||||
|
||||
class CheckPermissionResource(BaseResource):
|
||||
def get(self, object_type, object_id, access_type):
|
||||
# convert API resource to model class, e.g., 'queries' to 'Query'
|
||||
object_type = get_classname_for_object_type(object_type)
|
||||
|
||||
Reference in New Issue
Block a user