From ae60e24aad3e58b6a7d893c42e28250dc15028b0 Mon Sep 17 00:00:00 2001 From: Julia Radzhabova Date: Tue, 26 Jun 2018 15:46:49 +0300 Subject: [PATCH] [DE] Add modifyContentControl parameter to permissions --- apps/api/documents/api.js | 1 + apps/documenteditor/main/app/controller/Main.js | 1 + apps/documenteditor/main/app/view/DocumentHolder.js | 3 ++- apps/documenteditor/main/app/view/Toolbar.js | 2 ++ 4 files changed, 6 insertions(+), 1 deletion(-) diff --git a/apps/api/documents/api.js b/apps/api/documents/api.js index 6a68577cc..304b365b3 100644 --- a/apps/api/documents/api.js +++ b/apps/api/documents/api.js @@ -45,6 +45,7 @@ changeHistory: , // default = false comment: // default = edit, modifyFilter: // default = true + modifyContentControl: // default = true } }, editorConfig: { diff --git a/apps/documenteditor/main/app/controller/Main.js b/apps/documenteditor/main/app/controller/Main.js index ba8bcfc96..57a7ff7d5 100644 --- a/apps/documenteditor/main/app/controller/Main.js +++ b/apps/documenteditor/main/app/controller/Main.js @@ -1099,6 +1099,7 @@ define([ this.appOptions.trialMode = params.asc_getLicenseMode(); this.appOptions.isProtectSupport = true; // remove in 5.2 this.appOptions.canProtect = this.appOptions.isProtectSupport && this.appOptions.isEdit && this.appOptions.isDesktopApp && this.appOptions.isOffline && this.api.asc_isSignaturesSupport(); + this.appOptions.canEditContentControl = (this.permissions.modifyContentControl!==false); if ( this.appOptions.isLightVersion ) { this.appOptions.canUseHistory = diff --git a/apps/documenteditor/main/app/view/DocumentHolder.js b/apps/documenteditor/main/app/view/DocumentHolder.js index 6664619ad..415fd7d13 100644 --- a/apps/documenteditor/main/app/view/DocumentHolder.js +++ b/apps/documenteditor/main/app/view/DocumentHolder.js @@ -2862,6 +2862,7 @@ define([ var control_props = me.api.asc_GetContentControlProperties(), lock_type = (control_props) ? control_props.get_Lock() : Asc.c_oAscSdtLockType.Unlocked; menuTableRemoveControl.setDisabled(lock_type==Asc.c_oAscSdtLockType.SdtContentLocked || lock_type==Asc.c_oAscSdtLockType.SdtLocked); + menuTableControlSettings.setVisible(me.mode.canEditContentControl); } menuTableTOC.setVisible(in_toc); }, @@ -3402,7 +3403,7 @@ define([ var in_toc = me.api.asc_GetTableOfContentsPr(true), in_control = !in_toc && me.api.asc_IsContentControl() ; menuParaRemoveControl.setVisible(in_control); - menuParaControlSettings.setVisible(in_control); + menuParaControlSettings.setVisible(in_control && me.mode.canEditContentControl); menuParaControlSeparator.setVisible(in_control); if (in_control) { var control_props = me.api.asc_GetContentControlProperties(), diff --git a/apps/documenteditor/main/app/view/Toolbar.js b/apps/documenteditor/main/app/view/Toolbar.js index 0224efb27..d957ecf9e 100644 --- a/apps/documenteditor/main/app/view/Toolbar.js +++ b/apps/documenteditor/main/app/view/Toolbar.js @@ -1966,6 +1966,8 @@ define([ this.btnMailRecepients.setVisible(mode.canCoAuthoring == true && mode.canUseMailMerge); this.listStylesAdditionalMenuItem.setVisible(mode.canEditStyles); + this.btnContentControls.menu.items[4].setVisible(mode.canEditContentControl); + this.btnContentControls.menu.items[5].setVisible(mode.canEditContentControl); }, onSendThemeColorSchemes: function (schemas) {