From 273126ab3448f89bc893e2929d815e8926e9425e Mon Sep 17 00:00:00 2001 From: qsm-odoo Date: Mon, 12 Nov 2018 14:50:17 +0000 Subject: [PATCH] [FIX] (website_)mass_mailing: restore popup design Compatibility: rebuilding a correct modal from user database content. Since the first version, the modal is saved in databases directly but has never used a correct structure. While it was working with BS3, it is not with BS4. This was breaking the design and prevented the modal to be able to close. task-1889341 closes odoo/odoo#28589 --- .../static/src/css/mass_mailing_popup.css | 1 - .../static/src/js/website_mass_mailing.js | 17 ++++++++++++++++- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/addons/mass_mailing/static/src/css/mass_mailing_popup.css b/addons/mass_mailing/static/src/css/mass_mailing_popup.css index 2408f53f218..1ebd8b85beb 100644 --- a/addons/mass_mailing/static/src/css/mass_mailing_popup.css +++ b/addons/mass_mailing/static/src/css/mass_mailing_popup.css @@ -152,7 +152,6 @@ fieldset[disabled] #o_newsletter_popup .btn.btn-success.active { } #o_newsletter_popup .o_popup_modal_content { border-radius: 2px; - margin: 20px; box-shadow: 0 0 20px rgba(255, 255, 255, 0.11); -webkit-box-shadow: 0 0 20px rgba(255, 255, 255, 0.11); border: 1px solid #767676; diff --git a/addons/website_mass_mailing/static/src/js/website_mass_mailing.js b/addons/website_mass_mailing/static/src/js/website_mass_mailing.js index 1820f2f0d8f..e30f824693d 100644 --- a/addons/website_mass_mailing/static/src/js/website_mass_mailing.js +++ b/addons/website_mass_mailing/static/src/js/website_mass_mailing.js @@ -67,8 +67,23 @@ sAnimation.registry.newsletter_popup = sAnimation.Class.extend({ selector: ".o_newsletter_popup", start: function () { var self = this; + + // Compatibility: rebuilding a correct modal from user database + // content. Since the first version, the modal is saved in databases + // directly but has never used a correct structure. While it was working + // with BS3, it is not with BS4. + // TODO review the newsletter popup creation, save and loading. + var $modal = this.$('.modal'); + if ($modal.is('.modal-dialog')) { + $modal.removeClass('modal-md modal-dialog'); + var $modalContent = $modal.find('.modal-content'); + $modalContent.wrapAll($('
', {class: 'modal-dialog'})); + } + var popupcontent = self.$target.find(".o_popup_content_dev").empty(); - if (!self.$target.data('list-id')) return; + if (!self.$target.data('list-id')) { + return; + } this._rpc({ route: '/website_mass_mailing/get_content',