From d093d1aebae74706a0e68bbb41b8a1be93e008ac Mon Sep 17 00:00:00 2001 From: Vincent Schippefilt Date: Wed, 6 Mar 2019 14:02:37 +0100 Subject: [PATCH] [REF] website_sale: adapt code after jQuery update Part of task 1896658 Co-authored-by: Aaron Bohy Co-authored-by: Christophe Matthieu Co-authored-by: Mathieu Duckerts-Antoine Co-authored-by: David Monjoie Co-authored-by: Martin Geubelle Co-authored-by: svs-odoo Co-authored-by: Vincent Schippefilt --- .../static/src/js/website_sale.editor.js | 12 ++++++------ .../static/src/js/website_sale_options.js | 4 +++- .../static/src/js/website_sale_tour_shop_mail.js | 2 +- 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/addons/website_sale/static/src/js/website_sale.editor.js b/addons/website_sale/static/src/js/website_sale.editor.js index c935602d83e..8c6cd07d3ea 100644 --- a/addons/website_sale/static/src/js/website_sale.editor.js +++ b/addons/website_sale/static/src/js/website_sale.editor.js @@ -21,7 +21,7 @@ WebsiteNewMenu.include({ * and redirects the user to this new product. * * @private - * @returns {Deferred} Unresolved if there is a redirection + * @returns {Promise} Unresolved if there is a redirection */ _createNewProduct: function () { var self = this; @@ -29,18 +29,18 @@ WebsiteNewMenu.include({ id: "editor_new_product", window_title: _t("New Product"), input: _t("Name"), - }).then(function (name) { - if (!name) { + }).then(function (result) { + if (!result.val) { return; } return self._rpc({ route: '/shop/add_product', params: { - name: name, + name: result.val, }, }).then(function (url) { window.location.href = url; - return $.Deferred(); + return new Promise(function () {}); }); }); }, @@ -56,7 +56,7 @@ require('web.dom_ready'); var options = require('web_editor.snippets.options'); if (!$('.js_sale').length) { - return $.Deferred().reject("DOM doesn't contain '.js_sale'"); + return Promise.reject("DOM doesn't contain '.js_sale'"); } $('.oe_website_sale').on('click', '.oe_currency_value:o_editable', function (ev) { diff --git a/addons/website_sale/static/src/js/website_sale_options.js b/addons/website_sale/static/src/js/website_sale_options.js index c9c71053126..5e55afe0e18 100644 --- a/addons/website_sale/static/src/js/website_sale_options.js +++ b/addons/website_sale/static/src/js/website_sale_options.js @@ -69,7 +69,7 @@ publicWidget.registry.WebsiteSaleOptions = publicWidget.Widget.extend(ProductCon false ); - return productReady.done(function (productId) { + productReady.then(function (productId){ $form.find(productSelector.join(', ')).val(productId); self.rootProduct = { @@ -96,6 +96,8 @@ publicWidget.registry.WebsiteSaleOptions = publicWidget.Widget.extend(ProductCon return self.optionalProductsModal.opened(); }); + + return productReady; }, /** diff --git a/addons/website_sale/static/src/js/website_sale_tour_shop_mail.js b/addons/website_sale/static/src/js/website_sale_tour_shop_mail.js index 0d8fe0131f0..d699db43189 100644 --- a/addons/website_sale/static/src/js/website_sale_tour_shop_mail.js +++ b/addons/website_sale/static/src/js/website_sale_tour_shop_mail.js @@ -34,7 +34,7 @@ tour.register('shop_mail', { 'domain': "https://domain-not-used.fr", }], }); - $.when(def1, def2).then(function (data) { + Promise.all([def1, def2]).then(function (data) { window.location.href = '/shop?search=Acoustic Bloc Screens'; }); },