From 4232732646fe5ca08ebb49c8b5eadd509320d018 Mon Sep 17 00:00:00 2001 From: Paulo Reis Date: Thu, 18 Oct 2018 15:33:09 +0100 Subject: [PATCH 1/2] Avoid using Angular eval for user-provided strings in the layout directive. --- services/web/app/views/project/editor.pug | 4 ++-- services/web/app/views/project/editor/editor.pug | 4 ++-- services/web/public/coffee/ide/directives/layout.coffee | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/services/web/app/views/project/editor.pug b/services/web/app/views/project/editor.pug index 980f578210..59ca487011 100644 --- a/services/web/app/views/project/editor.pug +++ b/services/web/app/views/project/editor.pug @@ -68,8 +68,8 @@ block content resize-on="layout:chat:resize,history:toggle", minimum-restore-size-west="130" custom-toggler-pane=hasFeature('custom-togglers') ? "'west'" : "false" - custom-toggler-msg-when-open=hasFeature('custom-togglers') ? "'" + translate("tooltip_hide_filetree") + "'" : "false" - custom-toggler-msg-when-closed=hasFeature('custom-togglers') ? "'" + translate("tooltip_show_filetree") + "'" : "false" + custom-toggler-msg-when-open=hasFeature('custom-togglers') ? translate("tooltip_hide_filetree") : "" + custom-toggler-msg-when-closed=hasFeature('custom-togglers') ? translate("tooltip_show_filetree") : "" ) .ui-layout-west include ./editor/file-tree diff --git a/services/web/app/views/project/editor/editor.pug b/services/web/app/views/project/editor/editor.pug index fda0fa6446..c93a08a49e 100644 --- a/services/web/app/views/project/editor/editor.pug +++ b/services/web/app/views/project/editor/editor.pug @@ -9,8 +9,8 @@ div.full-size( minimum-restore-size-east="300" allow-overflow-on="'center'" custom-toggler-pane=hasFeature('custom-togglers') ? "'east'" : "false" - custom-toggler-msg-when-open=hasFeature('custom-togglers') ? "'" + translate("tooltip_hide_pdf") + "'" : "false" - custom-toggler-msg-when-closed=hasFeature('custom-togglers') ? "'" + translate("tooltip_show_pdf") + "'" : "false" + custom-toggler-msg-when-open=hasFeature('custom-togglers') ? translate("tooltip_hide_pdf") : "" + custom-toggler-msg-when-closed=hasFeature('custom-togglers') ? translate("tooltip_show_pdf") : "" ) .ui-layout-center( ng-controller="ReviewPanelController", diff --git a/services/web/public/coffee/ide/directives/layout.coffee b/services/web/public/coffee/ide/directives/layout.coffee index 8c30943f39..6708ad78db 100644 --- a/services/web/public/coffee/ide/directives/layout.coffee +++ b/services/web/public/coffee/ide/directives/layout.coffee @@ -9,9 +9,9 @@ define [ name = attrs.layout customTogglerPane = scope.$eval(attrs.customTogglerPane or "false") - customTogglerMsgWhenOpen = scope.$eval(attrs.customTogglerMsgWhenOpen or "false") - customTogglerMsgWhenClosed = scope.$eval(attrs.customTogglerMsgWhenClosed or "false") - hasCustomToggler = customTogglerPane != false and customTogglerMsgWhenOpen != false and customTogglerMsgWhenClosed != false + customTogglerMsgWhenOpen = attrs.customTogglerMsgWhenOpen + customTogglerMsgWhenClosed = attrs.customTogglerMsgWhenClosed + hasCustomToggler = customTogglerPane != false and customTogglerMsgWhenOpen != "" and customTogglerMsgWhenClosed != "" if attrs.spacingOpen? spacingOpen = parseInt(attrs.spacingOpen, 10) From a957593b62ab834882206ae6c491236c49da59b6 Mon Sep 17 00:00:00 2001 From: Paulo Reis Date: Fri, 19 Oct 2018 10:34:07 +0100 Subject: [PATCH 2/2] Avoid adding custom toggler attributes when the feature flag is false. --- services/web/app/views/project/editor.pug | 6 +++--- services/web/app/views/project/editor/editor.pug | 7 ++++--- services/web/public/coffee/ide/directives/layout.coffee | 4 ++-- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/services/web/app/views/project/editor.pug b/services/web/app/views/project/editor.pug index 59ca487011..b6ece1b302 100644 --- a/services/web/app/views/project/editor.pug +++ b/services/web/app/views/project/editor.pug @@ -67,9 +67,9 @@ block content ng-hide="state.loading", resize-on="layout:chat:resize,history:toggle", minimum-restore-size-west="130" - custom-toggler-pane=hasFeature('custom-togglers') ? "'west'" : "false" - custom-toggler-msg-when-open=hasFeature('custom-togglers') ? translate("tooltip_hide_filetree") : "" - custom-toggler-msg-when-closed=hasFeature('custom-togglers') ? translate("tooltip_show_filetree") : "" + custom-toggler-pane=hasFeature('custom-togglers') ? "west" : false + custom-toggler-msg-when-open=hasFeature('custom-togglers') ? translate("tooltip_hide_filetree") : false + custom-toggler-msg-when-closed=hasFeature('custom-togglers') ? translate("tooltip_show_filetree") : false ) .ui-layout-west include ./editor/file-tree diff --git a/services/web/app/views/project/editor/editor.pug b/services/web/app/views/project/editor/editor.pug index c93a08a49e..e98a3392fc 100644 --- a/services/web/app/views/project/editor/editor.pug +++ b/services/web/app/views/project/editor/editor.pug @@ -8,9 +8,9 @@ div.full-size( initial-size-east="'50%'" minimum-restore-size-east="300" allow-overflow-on="'center'" - custom-toggler-pane=hasFeature('custom-togglers') ? "'east'" : "false" - custom-toggler-msg-when-open=hasFeature('custom-togglers') ? translate("tooltip_hide_pdf") : "" - custom-toggler-msg-when-closed=hasFeature('custom-togglers') ? translate("tooltip_show_pdf") : "" + custom-toggler-pane=hasFeature('custom-togglers') ? "east" : false + custom-toggler-msg-when-open=hasFeature('custom-togglers') ? translate("tooltip_hide_pdf") : false + custom-toggler-msg-when-closed=hasFeature('custom-togglers') ? translate("tooltip_show_pdf") : false ) .ui-layout-center( ng-controller="ReviewPanelController", @@ -101,6 +101,7 @@ div.full-size( ng-click="syncToCode()" ) i.synctex-control-icon + div.full-size( ng-if="ui.pdfLayout == 'flat'" ng-show="ui.view == 'pdf'" diff --git a/services/web/public/coffee/ide/directives/layout.coffee b/services/web/public/coffee/ide/directives/layout.coffee index 6708ad78db..1fd12c0aa5 100644 --- a/services/web/public/coffee/ide/directives/layout.coffee +++ b/services/web/public/coffee/ide/directives/layout.coffee @@ -8,10 +8,10 @@ define [ pre: (scope, element, attrs) -> name = attrs.layout - customTogglerPane = scope.$eval(attrs.customTogglerPane or "false") + customTogglerPane = attrs.customTogglerPane customTogglerMsgWhenOpen = attrs.customTogglerMsgWhenOpen customTogglerMsgWhenClosed = attrs.customTogglerMsgWhenClosed - hasCustomToggler = customTogglerPane != false and customTogglerMsgWhenOpen != "" and customTogglerMsgWhenClosed != "" + hasCustomToggler = customTogglerPane? and customTogglerMsgWhenOpen? and customTogglerMsgWhenClosed? if attrs.spacingOpen? spacingOpen = parseInt(attrs.spacingOpen, 10)