diff --git a/src/lib/components/admin/Users/Groups/Permissions.svelte b/src/lib/components/admin/Users/Groups/Permissions.svelte index f1d2bc5305..5a6b70e961 100644 --- a/src/lib/components/admin/Users/Groups/Permissions.svelte +++ b/src/lib/components/admin/Users/Groups/Permissions.svelte @@ -6,6 +6,7 @@ import Tooltip from '$lib/components/common/Tooltip.svelte'; import { DEFAULT_PERMISSIONS } from '$lib/constants/permissions'; + import { config } from '$lib/stores'; export let permissions = {}; export let defaultPermissions = {}; @@ -15,6 +16,24 @@ permissions = fillMissingProperties(permissions, DEFAULT_PERMISSIONS); } + $: if ( + $config?.features?.enable_plugins === false && + permissions?.workspace && + (permissions.workspace.tools || + permissions.workspace.tools_import || + permissions.workspace.tools_export) + ) { + permissions = { + ...permissions, + workspace: { + ...permissions.workspace, + tools: false, + tools_import: false, + tools_export: false + } + }; + } + function fillMissingProperties(obj: any, defaults: any) { return { ...defaults, @@ -122,43 +141,45 @@ {/if} -
- -
- {$i18n.t('Tools Access')} -
- -
+ {#if $config?.features?.enable_plugins} +
+ +
+ {$i18n.t('Tools Access')} +
+ +
- {#if permissions.workspace.tools} -
-
-
- {$i18n.t('Import Tools')} + {#if permissions.workspace.tools} +
+
+
+ {$i18n.t('Import Tools')} +
+
- -
-
-
- {$i18n.t('Export Tools')} +
+
+ {$i18n.t('Export Tools')} +
+
-
-
- {:else if defaultPermissions?.workspace?.tools} -
-
- {$i18n.t('This is a default user permission and will remain enabled.')} + {:else if defaultPermissions?.workspace?.tools} +
+
+ {$i18n.t('This is a default user permission and will remain enabled.')} +
-
- {/if} -
+ {/if} +
+ {/if}