From 550d7145e7759f97f3f4d101c27f3b55d03efd4f Mon Sep 17 00:00:00 2001 From: Siddarth Gajjar <sga@odoo.com> Date: Tue, 9 Feb 2021 11:22:37 +0000 Subject: [PATCH] [FIX] website: prevent error on edit mode save for restricted editor - Before this commit, When user with restricted rights tries to edit frontend page and without changing anything click on save button generate traceback due to invalid return type. - After this commit, On hitting save button on restrict mode resolve the traceback by changing function return type to promise. task-2379101 closes odoo/odoo#66357 Signed-off-by: Romain Derie (rde) <rde@odoo.com> --- addons/website/static/src/js/editor/editor_menu.js | 4 +++- addons/website/static/src/js/editor/wysiwyg_multizone.js | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/addons/website/static/src/js/editor/editor_menu.js b/addons/website/static/src/js/editor/editor_menu.js index e330df970016..cd0ef26b3c50 100644 --- a/addons/website/static/src/js/editor/editor_menu.js +++ b/addons/website/static/src/js/editor/editor_menu.js @@ -123,7 +123,9 @@ var EditorMenu = Widget.extend({ return this.wysiwyg.save(false).then(function (result) { var $wrapwrap = $('#wrapwrap'); self.editable($wrapwrap).removeClass('o_editable'); - if (result.isDirty && reload !== false) { + if (!result.isDirty) { + self.cancel(reload); + } else if (result.isDirty && reload !== false) { // remove top padding because the connected bar is not visible $('body').removeClass('o_connected_user'); return self._reload(); diff --git a/addons/website/static/src/js/editor/wysiwyg_multizone.js b/addons/website/static/src/js/editor/wysiwyg_multizone.js index 596d40db72da..1873890d0731 100644 --- a/addons/website/static/src/js/editor/wysiwyg_multizone.js +++ b/addons/website/static/src/js/editor/wysiwyg_multizone.js @@ -111,7 +111,7 @@ var WysiwygMultizone = Wysiwyg.extend({ .then(() => this.editor.save(false)) .then(() => ({isDirty: true})); } else { - return {isDirty: false}; + return Promise.resolve({isDirty: false}); } }, /** -- GitLab