mirror of
https://github.com/gristlabs/grist-core.git
synced 2024-10-27 20:44:07 +00:00
(core) AdminPanel: hide the enterprise toggle in core and grist-ee images
Summary: In the pure OSS `grist-oss` image, the `ActivationPage` module from stubs is used, as the `ext` code is completely missing. We can easily just always return `false` here. In the case when the `ext` directory exists, this may mean we're in the standard `grist` image or the `grist-ee` image. The latter is distinguished by having `GRIST_FORCE_ENABLE_ENTERPRISE` so we check if that's on, and hide the toggle accordingly if so. Test Plan: Use these changes to build the three Docker images (`grist-oss`, `grist`, and `grist-ee`) and verify that only `grist` shows the toggle. Reviewers: jarek Reviewed By: jarek Subscribers: jarek Differential Revision: https://phab.getgrist.com/D4321
This commit is contained in:
parent
0a78cdbaab
commit
54502280de
@ -26,6 +26,7 @@ import {Computed, Disposable, dom, IDisposable,
|
|||||||
IDisposableOwner, MultiHolder, Observable, styled} from 'grainjs';
|
IDisposableOwner, MultiHolder, Observable, styled} from 'grainjs';
|
||||||
import {AdminSection, AdminSectionItem, HidableToggle} from 'app/client/ui/AdminPanelCss';
|
import {AdminSection, AdminSectionItem, HidableToggle} from 'app/client/ui/AdminPanelCss';
|
||||||
import {getAdminPanelName} from 'app/client/ui/AdminPanelName';
|
import {getAdminPanelName} from 'app/client/ui/AdminPanelName';
|
||||||
|
import {showEnterpriseToggle} from 'app/client/ui/ActivationPage';
|
||||||
|
|
||||||
const t = makeT('AdminPanel');
|
const t = makeT('AdminPanel');
|
||||||
|
|
||||||
@ -158,13 +159,7 @@ Please log in as an administrator.`)),
|
|||||||
description: t('Current version of Grist'),
|
description: t('Current version of Grist'),
|
||||||
value: cssValueLabel(`Version ${version.version}`),
|
value: cssValueLabel(`Version ${version.version}`),
|
||||||
}),
|
}),
|
||||||
dom.create(AdminSectionItem, {
|
this._maybeAddEnterpriseToggle(),
|
||||||
id: 'enterprise',
|
|
||||||
name: t('Enterprise'),
|
|
||||||
description: t('Enable Grist Enterprise'),
|
|
||||||
value: dom.create(HidableToggle, this._toggleEnterprise.getEnterpriseToggleObservable()),
|
|
||||||
expandedContent: this._toggleEnterprise.buildEnterpriseSection(),
|
|
||||||
}),
|
|
||||||
this._buildUpdates(owner),
|
this._buildUpdates(owner),
|
||||||
]),
|
]),
|
||||||
dom.create(AdminSection, t('Self Checks'), [
|
dom.create(AdminSection, t('Self Checks'), [
|
||||||
@ -186,6 +181,19 @@ Please log in as an administrator.`)),
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private _maybeAddEnterpriseToggle() {
|
||||||
|
if (!showEnterpriseToggle()) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return dom.create(AdminSectionItem, {
|
||||||
|
id: 'enterprise',
|
||||||
|
name: t('Enterprise'),
|
||||||
|
description: t('Enable Grist Enterprise'),
|
||||||
|
value: dom.create(HidableToggle, this._toggleEnterprise.getEnterpriseToggleObservable()),
|
||||||
|
expandedContent: this._toggleEnterprise.buildEnterpriseSection(),
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
private _buildSandboxingDisplay(owner: IDisposableOwner) {
|
private _buildSandboxingDisplay(owner: IDisposableOwner) {
|
||||||
return dom.domComputed(
|
return dom.domComputed(
|
||||||
use => {
|
use => {
|
||||||
|
@ -810,6 +810,9 @@ export interface GristLoadConfig {
|
|||||||
// The Grist deployment type (e.g. core, enterprise).
|
// The Grist deployment type (e.g. core, enterprise).
|
||||||
deploymentType?: GristDeploymentType;
|
deploymentType?: GristDeploymentType;
|
||||||
|
|
||||||
|
// Force enterprise deployment? For backwards compatibility with grist-ee Docker image
|
||||||
|
forceEnableEnterprise?: boolean;
|
||||||
|
|
||||||
// The org containing public templates and tutorials.
|
// The org containing public templates and tutorials.
|
||||||
templateOrg?: string|null;
|
templateOrg?: string|null;
|
||||||
|
|
||||||
|
@ -96,6 +96,7 @@ export function makeGristConfig(options: MakeGristConfigOptions): GristLoadConfi
|
|||||||
userLocale: (req as RequestWithLogin | undefined)?.user?.options?.locale,
|
userLocale: (req as RequestWithLogin | undefined)?.user?.options?.locale,
|
||||||
telemetry: server?.getTelemetry().getTelemetryConfig(req as RequestWithLogin | undefined),
|
telemetry: server?.getTelemetry().getTelemetryConfig(req as RequestWithLogin | undefined),
|
||||||
deploymentType: server?.getDeploymentType(),
|
deploymentType: server?.getDeploymentType(),
|
||||||
|
forceEnableEnterprise: isAffirmative(process.env.GRIST_FORCE_ENABLE_ENTERPRISE),
|
||||||
templateOrg: getTemplateOrg(),
|
templateOrg: getTemplateOrg(),
|
||||||
onboardingTutorialDocId: getOnboardingTutorialDocId(),
|
onboardingTutorialDocId: getOnboardingTutorialDocId(),
|
||||||
canCloseAccount: isAffirmative(process.env.GRIST_ACCOUNT_CLOSE),
|
canCloseAccount: isAffirmative(process.env.GRIST_ACCOUNT_CLOSE),
|
||||||
|
@ -5,3 +5,8 @@ import {
|
|||||||
export function getActivationPage(): IActivationPageCreator {
|
export function getActivationPage(): IActivationPageCreator {
|
||||||
return DefaultActivationPage;
|
return DefaultActivationPage;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function showEnterpriseToggle() {
|
||||||
|
// To be changed by enterprise module
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user