From d13b081cfe3527ad8f02f6622cad450b72bb541d Mon Sep 17 00:00:00 2001 From: Ville Brofeldt <33317356+villebro@users.noreply.github.com> Date: Tue, 17 Aug 2021 10:55:33 +0300 Subject: [PATCH] fix(explore): let admin overwrite slice (#16290) --- .../src/explore/components/PropertiesModal/index.tsx | 2 +- superset/views/core.py | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/superset-frontend/src/explore/components/PropertiesModal/index.tsx b/superset-frontend/src/explore/components/PropertiesModal/index.tsx index 0c46f6ba79..ab1e075a45 100644 --- a/superset-frontend/src/explore/components/PropertiesModal/index.tsx +++ b/superset-frontend/src/explore/components/PropertiesModal/index.tsx @@ -175,7 +175,7 @@ export default function PropertiesModal({ buttonStyle="primary" // @ts-ignore onClick={onSubmit} - disabled={!owners || submitting || !name} + disabled={submitting || !name} cta > {t('Save')} diff --git a/superset/views/core.py b/superset/views/core.py index cc03e8e928..5faef2080c 100755 --- a/superset/views/core.py +++ b/superset/views/core.py @@ -122,6 +122,7 @@ from superset.views.base import ( get_error_msg, get_user_roles, handle_api_exception, + is_user_admin, json_error_response, json_errors_response, json_success, @@ -787,7 +788,9 @@ class Superset(BaseSupersetView): # pylint: disable=too-many-public-methods # slc perms slice_add_perm = security_manager.can_access("can_write", "Chart") - slice_overwrite_perm = is_owner(slc, g.user) if slc else False + slice_overwrite_perm = ( + is_owner(slc, g.user) or is_user_admin() if slc else False + ) slice_download_perm = security_manager.can_access("can_csv", "Superset") form_data["datasource"] = str(datasource_id) + "__" + cast(str, datasource_type)