From 6935d8fc83a388068fc353fdcfc7674213ecbd34 Mon Sep 17 00:00:00 2001 From: snt Date: Fri, 27 Feb 2026 14:58:20 +0100 Subject: [PATCH] [FIX] website_sale_aplicoop: save draft on checkout button --- .../static/src/js/website_sale.js | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/website_sale_aplicoop/static/src/js/website_sale.js b/website_sale_aplicoop/static/src/js/website_sale.js index 65010d9..b80fde7 100644 --- a/website_sale_aplicoop/static/src/js/website_sale.js +++ b/website_sale_aplicoop/static/src/js/website_sale.js @@ -449,7 +449,7 @@ var tooltipMap = { "save-cart-btn": "save_cart", "reload-cart-btn": "reload_cart", - "confirm-order-btn": "confirm_order", + "confirm-order-btn": "save_cart", "remove-from-cart": "remove_item", }; @@ -634,9 +634,9 @@ if (confirmBtn) { confirmBtn.addEventListener("click", function (e) { - console.log("[CLICK] confirm-order-btn clicked"); + console.log("[CLICK] confirm-order-btn clicked (save draft)"); e.preventDefault(); - self._confirmOrder(); + self._saveOrderDraft(); }); } @@ -1499,10 +1499,14 @@ console.log("[_saveOrderDraft] Starting - this.orderId:", this.orderId); var self = this; + var labels = this._getLabels(); + var cartKey = "eskaera_" + this.orderId + "_cart"; + var storedCart = localStorage.getItem(cartKey); + var cart = storedCart ? JSON.parse(storedCart) : this.cart; var items = []; - Object.keys(this.cart).forEach(function (productId) { - var item = self.cart[productId]; + Object.keys(cart).forEach(function (productId) { + var item = cart[productId]; items.push({ product_id: productId, product_name: item.name, @@ -1527,11 +1531,11 @@ console.log("Response:", data); if (data.success) { - self._showNotification( - "✓ Order saved as draft successfully", - "success", - 5000 - ); + var successMsg = + labels.draft_saved_success || + labels.draft_saved || + "Order saved as draft successfully"; + self._showNotification("\u2713 " + successMsg, "success", 5000); } else if (data.existing_draft) { // A draft already exists - show modal with merge/replace options self._showDraftConflictModal(data);