diff --git a/packages/web/src/appobj/DatabaseAppObject.svelte b/packages/web/src/appobj/DatabaseAppObject.svelte index 6233e5734..e307d6970 100644 --- a/packages/web/src/appobj/DatabaseAppObject.svelte +++ b/packages/web/src/appobj/DatabaseAppObject.svelte @@ -511,7 +511,8 @@ await dbgateApi.executeQuery(${JSON.stringify( text: _t('database.exportDbModel', { defaultMessage: 'Export DB model' }), }, isProApp() && - driver?.databaseEngineTypes?.includes('sql') && { + driver?.databaseEngineTypes?.includes('sql') && + hasPermission('dbops/chat') && { onClick: handleDatabaseChat, text: _t('database.databaseChat', { defaultMessage: 'Database chat' }), }, diff --git a/packages/web/src/commands/stdCommands.ts b/packages/web/src/commands/stdCommands.ts index e37bd9b1a..c61029a7d 100644 --- a/packages/web/src/commands/stdCommands.ts +++ b/packages/web/src/commands/stdCommands.ts @@ -723,7 +723,8 @@ if (isProApp()) { icon: 'icon ai', testEnabled: () => getCurrentDatabase() != null && - findEngineDriver(getCurrentDatabase()?.connection, getExtensions())?.databaseEngineTypes?.includes('sql'), + findEngineDriver(getCurrentDatabase()?.connection, getExtensions())?.databaseEngineTypes?.includes('sql') && + hasPermission('dbops/chat'), onClick: () => { openNewTab({ title: 'Chat', diff --git a/packages/web/src/datagrid/DataGridCore.svelte b/packages/web/src/datagrid/DataGridCore.svelte index d2f772e4a..9e898a46c 100644 --- a/packages/web/src/datagrid/DataGridCore.svelte +++ b/packages/web/src/datagrid/DataGridCore.svelte @@ -424,6 +424,7 @@ import { _t } from '../translations'; import { isProApp } from '../utility/proTools'; import SaveArchiveModal from '../modals/SaveArchiveModal.svelte'; + import hasPermission from '../utility/hasPermission'; export let onLoadNextData = undefined; export let grider = undefined; @@ -1848,6 +1849,7 @@ // }, isProApp() && { command: 'dataGrid.sendToDataDeploy' }, isProApp() && + hasPermission('dbops/charts') && onOpenChart && { text: 'Open chart', onClick: () => onOpenChart(), diff --git a/packages/web/src/tabs/QueryTab.svelte b/packages/web/src/tabs/QueryTab.svelte index a2102fa72..41fc77599 100644 --- a/packages/web/src/tabs/QueryTab.svelte +++ b/packages/web/src/tabs/QueryTab.svelte @@ -154,6 +154,7 @@ import RowsLimitModal from '../modals/RowsLimitModal.svelte'; import _ from 'lodash'; import FontIcon from '../icons/FontIcon.svelte'; + import hasPermission from '../utility/hasPermission'; export let tabid; export let conid; @@ -794,7 +795,7 @@ hideDisabled /> - {#if isProApp() && visibleResultTabs && !busy} + {#if isProApp() && visibleResultTabs && !busy && hasPermission('dbops/charts')} {/if} - {#if isProApp() && !visibleResultTabs} + {#if isProApp() && !visibleResultTabs && hasPermission('dbops/charts')}