From 92d4fec022be736c25dd42d58fa0967e795976df Mon Sep 17 00:00:00 2001 From: Julia Radzhabova Date: Mon, 2 Nov 2020 23:26:17 +0300 Subject: [PATCH] Show beta version label --- .../main/app/controller/LeftMenu.js | 4 +- .../main/app/controller/Main.js | 1 + apps/documenteditor/main/app/view/LeftMenu.js | 37 ++++++++++++++----- .../main/resources/less/leftmenu.less | 2 +- .../main/app/controller/LeftMenu.js | 4 +- .../main/app/controller/Main.js | 2 + .../main/app/view/LeftMenu.js | 37 ++++++++++++++----- .../main/resources/less/leftmenu.less | 2 +- .../main/app/controller/LeftMenu.js | 4 +- .../main/app/controller/Main.js | 2 + .../main/app/view/LeftMenu.js | 37 ++++++++++++++----- .../main/resources/less/leftmenu.less | 2 +- 12 files changed, 98 insertions(+), 36 deletions(-) diff --git a/apps/documenteditor/main/app/controller/LeftMenu.js b/apps/documenteditor/main/app/controller/LeftMenu.js index ef762b5115..5d3238ab03 100644 --- a/apps/documenteditor/main/app/controller/LeftMenu.js +++ b/apps/documenteditor/main/app/controller/LeftMenu.js @@ -206,7 +206,7 @@ define([ this.leftMenu.setOptionsPanel('navigation', this.getApplication().getController('Navigation').getView('Navigation')); - this.mode.trialMode && this.leftMenu.setDeveloperMode(this.mode.trialMode); + (this.mode.trialMode || this.mode.isBeta) && this.leftMenu.setDeveloperMode(this.mode.trialMode, this.mode.isBeta, this.mode.buildVersion); Common.util.Shortcuts.resumeEvents(); return this; @@ -218,7 +218,7 @@ define([ this.leftMenu.setOptionsPanel('plugins', this.getApplication().getController('Common.Controllers.Plugins').getView('Common.Views.Plugins')); } else this.leftMenu.btnPlugins.hide(); - this.mode.trialMode && this.leftMenu.setDeveloperMode(this.mode.trialMode); + (this.mode.trialMode || this.mode.isBeta) && this.leftMenu.setDeveloperMode(this.mode.trialMode, this.mode.isBeta, this.mode.buildVersion); }, clickMenuFileItem: function(menu, action, isopts) { diff --git a/apps/documenteditor/main/app/controller/Main.js b/apps/documenteditor/main/app/controller/Main.js index 860a60da32..ecacd9dae8 100644 --- a/apps/documenteditor/main/app/controller/Main.js +++ b/apps/documenteditor/main/app/controller/Main.js @@ -1233,6 +1233,7 @@ define([ this.appOptions.forcesave = this.appOptions.canForcesave; this.appOptions.canEditComments= this.appOptions.isOffline || !(typeof (this.editorConfig.customization) == 'object' && this.editorConfig.customization.commentAuthorOnly); this.appOptions.trialMode = params.asc_getLicenseMode(); + this.appOptions.isBeta = params.asc_getIsBeta(); this.appOptions.isSignatureSupport= this.appOptions.isEdit && this.appOptions.isDesktopApp && this.appOptions.isOffline && this.api.asc_isSignaturesSupport(); this.appOptions.isPasswordSupport = this.appOptions.isEdit && this.appOptions.isDesktopApp && this.appOptions.isOffline && this.api.asc_isProtectionSupport(); this.appOptions.canProtect = (this.appOptions.isSignatureSupport || this.appOptions.isPasswordSupport); diff --git a/apps/documenteditor/main/app/view/LeftMenu.js b/apps/documenteditor/main/app/view/LeftMenu.js index 931c71f505..014dca04b1 100644 --- a/apps/documenteditor/main/app/view/LeftMenu.js +++ b/apps/documenteditor/main/app/view/LeftMenu.js @@ -381,16 +381,29 @@ define([ Common.NotificationCenter.trigger('layout:changed', 'history'); }, - setDeveloperMode: function(mode) { + setDeveloperMode: function(mode, beta, version) { if ( !this.$el.is(':visible') ) return; - - if (!this.developerHint) { - this.developerHint = $('
' + ((mode == Asc.c_oLicenseMode.Trial) ? this.txtTrial.toLocaleUpperCase() : this.txtDeveloper.toLocaleUpperCase()) + '
').appendTo(this.$el); - this.devHeight = this.developerHint.outerHeight(); - $(window).on('resize', _.bind(this.onWindowResize, this)); + if (mode) { + if (!this.developerHint) { + this.developerHint = $('
' + ((mode == Asc.c_oLicenseMode.Trial) ? this.txtTrial.toLocaleUpperCase() : this.txtDeveloper.toLocaleUpperCase()) + '
').appendTo(this.$el); + this.devHeight = this.developerHint.outerHeight(); + $(window).on('resize', _.bind(this.onWindowResize, this)); + } + this.developerHint.toggleClass('hidden', !mode); + } + if (beta) { + if (!this.betaHint) { + var style = (mode) ? 'style="margin-top: 4px;"' : '', + arr = (version || '').split('.'), + ver = ''; + (arr.length>0) && (ver += ('v. ' + arr[0])); + (arr.length>1) && (ver += ('.' + arr[0])); + this.betaHint = $('
' + (ver + ' (beta)' ) + '
').appendTo(this.$el); + this.betaHeight = this.betaHint.outerHeight(); + $(window).on('resize', _.bind(this.onWindowResize, this)); + } + this.betaHint.toggleClass('hidden', !beta); } - this.developerHint.toggleClass('hidden', !mode); - var btns = this.$el.find('button.btn-category:visible'), lastbtn = (btns.length>0) ? $(btns[btns.length-1]) : null; this.minDevPosition = (lastbtn) ? (lastbtn.offset().top - lastbtn.offsetParent().offset().top + lastbtn.height() + 20) : 20; @@ -398,7 +411,13 @@ define([ }, onWindowResize: function() { - this.developerHint.css('top', Math.max((this.$el.height()-this.devHeight)/2, this.minDevPosition)); + var height = (this.devHeight || 0) + (this.betaHeight || 0); + var top = Math.max((this.$el.height()-height)/2, this.minDevPosition); + if (this.developerHint) { + this.developerHint.css('top', top); + top += this.devHeight; + } + this.betaHint && this.betaHint.css('top', top); }, /** coauthoring begin **/ tipComments : 'Comments', diff --git a/apps/documenteditor/main/resources/less/leftmenu.less b/apps/documenteditor/main/resources/less/leftmenu.less index cee2142f2a..8c2498fb0f 100644 --- a/apps/documenteditor/main/resources/less/leftmenu.less +++ b/apps/documenteditor/main/resources/less/leftmenu.less @@ -51,7 +51,7 @@ overflow: hidden; } -#developer-hint { +#developer-hint, #beta-hint { position: absolute; left: 0; padding: 12px 0; diff --git a/apps/presentationeditor/main/app/controller/LeftMenu.js b/apps/presentationeditor/main/app/controller/LeftMenu.js index a2f3012dd1..fa1432ed7a 100644 --- a/apps/presentationeditor/main/app/controller/LeftMenu.js +++ b/apps/presentationeditor/main/app/controller/LeftMenu.js @@ -192,7 +192,7 @@ define([ this.leftMenu.btnChat.hide(); this.leftMenu.btnComments.hide(); } - this.mode.trialMode && this.leftMenu.setDeveloperMode(this.mode.trialMode); + (this.mode.trialMode || this.mode.isBeta) && this.leftMenu.setDeveloperMode(this.mode.trialMode, this.mode.isBeta, this.mode.buildVersion); /** coauthoring end **/ Common.util.Shortcuts.resumeEvents(); this.leftMenu.btnThumbs.toggle(true); @@ -205,7 +205,7 @@ define([ this.leftMenu.setOptionsPanel('plugins', this.getApplication().getController('Common.Controllers.Plugins').getView('Common.Views.Plugins')); } else this.leftMenu.btnPlugins.hide(); - this.mode.trialMode && this.leftMenu.setDeveloperMode(this.mode.trialMode); + (this.mode.trialMode || this.mode.isBeta) && this.leftMenu.setDeveloperMode(this.mode.trialMode, this.mode.isBeta, this.mode.buildVersion); }, clickMenuFileItem: function(menu, action, isopts) { diff --git a/apps/presentationeditor/main/app/controller/Main.js b/apps/presentationeditor/main/app/controller/Main.js index 5190c81bed..e25a425eac 100644 --- a/apps/presentationeditor/main/app/controller/Main.js +++ b/apps/presentationeditor/main/app/controller/Main.js @@ -954,7 +954,9 @@ define([ this.appOptions.canForcesave = this.appOptions.isEdit && !this.appOptions.isOffline && (typeof (this.editorConfig.customization) == 'object' && !!this.editorConfig.customization.forcesave); this.appOptions.forcesave = this.appOptions.canForcesave; this.appOptions.canEditComments= this.appOptions.isOffline || !(typeof (this.editorConfig.customization) == 'object' && this.editorConfig.customization.commentAuthorOnly); + this.appOptions.buildVersion = params.asc_getBuildVersion(); this.appOptions.trialMode = params.asc_getLicenseMode(); + this.appOptions.isBeta = params.asc_getIsBeta(); this.appOptions.isSignatureSupport= this.appOptions.isEdit && this.appOptions.isDesktopApp && this.appOptions.isOffline && this.api.asc_isSignaturesSupport(); this.appOptions.isPasswordSupport = this.appOptions.isEdit && this.appOptions.isDesktopApp && this.appOptions.isOffline && this.api.asc_isProtectionSupport(); this.appOptions.canProtect = (this.appOptions.isSignatureSupport || this.appOptions.isPasswordSupport); diff --git a/apps/presentationeditor/main/app/view/LeftMenu.js b/apps/presentationeditor/main/app/view/LeftMenu.js index b47ddeb81c..1c504bf87b 100644 --- a/apps/presentationeditor/main/app/view/LeftMenu.js +++ b/apps/presentationeditor/main/app/view/LeftMenu.js @@ -359,16 +359,29 @@ define([ return this; }, - setDeveloperMode: function(mode) { + setDeveloperMode: function(mode, beta, version) { if ( !this.$el.is(':visible') ) return; - - if (!this.developerHint) { - this.developerHint = $('
' + ((mode == Asc.c_oLicenseMode.Trial) ? this.txtTrial.toLocaleUpperCase() : this.txtDeveloper.toLocaleUpperCase()) + '
').appendTo(this.$el); - this.devHeight = this.developerHint.outerHeight(); - $(window).on('resize', _.bind(this.onWindowResize, this)); + if (mode) { + if (!this.developerHint) { + this.developerHint = $('
' + ((mode == Asc.c_oLicenseMode.Trial) ? this.txtTrial.toLocaleUpperCase() : this.txtDeveloper.toLocaleUpperCase()) + '
').appendTo(this.$el); + this.devHeight = this.developerHint.outerHeight(); + $(window).on('resize', _.bind(this.onWindowResize, this)); + } + this.developerHint.toggleClass('hidden', !mode); + } + if (beta) { + if (!this.betaHint) { + var style = (mode) ? 'style="margin-top: 4px;"' : '', + arr = (version || '').split('.'), + ver = ''; + (arr.length>0) && (ver += ('v. ' + arr[0])); + (arr.length>1) && (ver += ('.' + arr[0])); + this.betaHint = $('
' + (ver + ' (beta)' ) + '
').appendTo(this.$el); + this.betaHeight = this.betaHint.outerHeight(); + $(window).on('resize', _.bind(this.onWindowResize, this)); + } + this.betaHint.toggleClass('hidden', !beta); } - this.developerHint.toggleClass('hidden', !mode); - var btns = this.$el.find('button.btn-category:visible'), lastbtn = (btns.length>0) ? $(btns[btns.length-1]) : null; this.minDevPosition = (lastbtn) ? (lastbtn.offset().top - lastbtn.offsetParent().offset().top + lastbtn.height() + 20) : 20; @@ -376,7 +389,13 @@ define([ }, onWindowResize: function() { - this.developerHint.css('top', Math.max((this.$el.height()-this.devHeight)/2, this.minDevPosition)); + var height = (this.devHeight || 0) + (this.betaHeight || 0); + var top = Math.max((this.$el.height()-height)/2, this.minDevPosition); + if (this.developerHint) { + this.developerHint.css('top', top); + top += this.devHeight; + } + this.betaHint && this.betaHint.css('top', top); }, /** coauthoring begin **/ diff --git a/apps/presentationeditor/main/resources/less/leftmenu.less b/apps/presentationeditor/main/resources/less/leftmenu.less index 65099d00fe..3f7e98e55f 100644 --- a/apps/presentationeditor/main/resources/less/leftmenu.less +++ b/apps/presentationeditor/main/resources/less/leftmenu.less @@ -485,7 +485,7 @@ } } -#developer-hint { +#developer-hint, #beta-hint { position: absolute; left: 0; padding: 12px 0; diff --git a/apps/spreadsheeteditor/main/app/controller/LeftMenu.js b/apps/spreadsheeteditor/main/app/controller/LeftMenu.js index 40d66fe244..c5743b13c8 100644 --- a/apps/spreadsheeteditor/main/app/controller/LeftMenu.js +++ b/apps/spreadsheeteditor/main/app/controller/LeftMenu.js @@ -217,7 +217,7 @@ define([ this.leftMenu.setOptionsPanel('spellcheck', this.getApplication().getController('Spellcheck').getView('Spellcheck')); } - this.mode.trialMode && this.leftMenu.setDeveloperMode(this.mode.trialMode); + (this.mode.trialMode || this.mode.isBeta) && this.leftMenu.setDeveloperMode(this.mode.trialMode, this.mode.isBeta, this.mode.buildVersion); /** coauthoring end **/ Common.util.Shortcuts.resumeEvents(); if (!this.mode.isEditMailMerge && !this.mode.isEditDiagram) @@ -231,7 +231,7 @@ define([ this.leftMenu.setOptionsPanel('plugins', this.getApplication().getController('Common.Controllers.Plugins').getView('Common.Views.Plugins')); } else this.leftMenu.btnPlugins.hide(); - this.mode.trialMode && this.leftMenu.setDeveloperMode(this.mode.trialMode); + (this.mode.trialMode || this.mode.isBeta) && this.leftMenu.setDeveloperMode(this.mode.trialMode, this.mode.isBeta, this.mode.buildVersion); }, clickMenuFileItem: function(menu, action, isopts) { diff --git a/apps/spreadsheeteditor/main/app/controller/Main.js b/apps/spreadsheeteditor/main/app/controller/Main.js index 6b8c2a3308..8d8f8e859e 100644 --- a/apps/spreadsheeteditor/main/app/controller/Main.js +++ b/apps/spreadsheeteditor/main/app/controller/Main.js @@ -1015,7 +1015,9 @@ define([ this.appOptions.canViewComments = this.appOptions.canComments || !((typeof (this.editorConfig.customization) == 'object') && this.editorConfig.customization.comments===false); this.appOptions.canChat = this.appOptions.canLicense && !this.appOptions.isOffline && !((typeof (this.editorConfig.customization) == 'object') && this.editorConfig.customization.chat===false); this.appOptions.canRename = this.editorConfig.canRename; + this.appOptions.buildVersion = params.asc_getBuildVersion(); this.appOptions.trialMode = params.asc_getLicenseMode(); + this.appOptions.isBeta = params.asc_getIsBeta(); this.appOptions.canModifyFilter = (this.permissions.modifyFilter!==false); this.appOptions.canBranding = params.asc_getCustomization(); if (this.appOptions.canBranding) diff --git a/apps/spreadsheeteditor/main/app/view/LeftMenu.js b/apps/spreadsheeteditor/main/app/view/LeftMenu.js index 16778fbcea..4b02276750 100644 --- a/apps/spreadsheeteditor/main/app/view/LeftMenu.js +++ b/apps/spreadsheeteditor/main/app/view/LeftMenu.js @@ -349,16 +349,29 @@ define([ return this; }, - setDeveloperMode: function(mode) { + setDeveloperMode: function(mode, beta, version) { if ( !this.$el.is(':visible') ) return; - - if (!this.developerHint) { - this.developerHint = $('
' + ((mode == Asc.c_oLicenseMode.Trial) ? this.txtTrial.toLocaleUpperCase() : this.txtDeveloper.toLocaleUpperCase()) + '
').appendTo(this.$el); - this.devHeight = this.developerHint.outerHeight(); - $(window).on('resize', _.bind(this.onWindowResize, this)); + if (mode) { + if (!this.developerHint) { + this.developerHint = $('
' + ((mode == Asc.c_oLicenseMode.Trial) ? this.txtTrial.toLocaleUpperCase() : this.txtDeveloper.toLocaleUpperCase()) + '
').appendTo(this.$el); + this.devHeight = this.developerHint.outerHeight(); + $(window).on('resize', _.bind(this.onWindowResize, this)); + } + this.developerHint.toggleClass('hidden', !mode); + } + if (beta) { + if (!this.betaHint) { + var style = (mode) ? 'style="margin-top: 4px;"' : '', + arr = (version || '').split('.'), + ver = ''; + (arr.length>0) && (ver += ('v. ' + arr[0])); + (arr.length>1) && (ver += ('.' + arr[0])); + this.betaHint = $('
' + (ver + ' (beta)' ) + '
').appendTo(this.$el); + this.betaHeight = this.betaHint.outerHeight(); + $(window).on('resize', _.bind(this.onWindowResize, this)); + } + this.betaHint.toggleClass('hidden', !beta); } - this.developerHint.toggleClass('hidden', !mode); - var btns = this.$el.find('button.btn-category:visible'), lastbtn = (btns.length>0) ? $(btns[btns.length-1]) : null; this.minDevPosition = (lastbtn) ? (lastbtn.offset().top - lastbtn.offsetParent().offset().top + lastbtn.height() + 20) : 20; @@ -366,7 +379,13 @@ define([ }, onWindowResize: function() { - this.developerHint.css('top', Math.max((this.$el.height()-this.devHeight)/2, this.minDevPosition)); + var height = (this.devHeight || 0) + (this.betaHeight || 0); + var top = Math.max((this.$el.height()-height)/2, this.minDevPosition); + if (this.developerHint) { + this.developerHint.css('top', top); + top += this.devHeight; + } + this.betaHint && this.betaHint.css('top', top); }, /** coauthoring begin **/ diff --git a/apps/spreadsheeteditor/main/resources/less/leftmenu.less b/apps/spreadsheeteditor/main/resources/less/leftmenu.less index a25fa59ed8..d438c13e15 100644 --- a/apps/spreadsheeteditor/main/resources/less/leftmenu.less +++ b/apps/spreadsheeteditor/main/resources/less/leftmenu.less @@ -549,7 +549,7 @@ } } -#developer-hint { +#developer-hint, #beta-hint { position: absolute; left: 0; padding: 12px 0;