Fix buyNow: form POST to /shop/post_basket with JSON basket field, opens checkout in new tab — no CORS, no CSRF

This commit is contained in:
2026-08-21 22:05:45 +00:00
parent d37ceca9bd
commit ba55327400
+19 -8
View File
@@ -627,13 +627,24 @@ var si = 0,
}); });
})(); })();
/* Buy Now — open Odoo shop product page in new tab */ /* Buy Now — POST basket via form, opens checkout in new tab */
var productUrls = {
54: 'https://ODOO4projects.com/shop/product/side-hustle-54',
55: 'https://ODOO4projects.com/shop/product/on-the-rise-55',
56: 'https://ODOO4projects.com/shop/product/powerhouse-56'
};
window.buyNow = function (productId) { window.buyNow = function (productId) {
var url = productUrls[productId] || 'https://ODOO4projects.com/shop'; var form = document.createElement('form');
window.open(url, '_blank'); form.method = 'POST';
form.action = 'https://ODOO4projects.com/shop/post_basket';
form.target = '_blank';
form.style.display = 'none';
var basket = document.createElement('input');
basket.type = 'hidden';
basket.name = 'basket';
basket.value = JSON.stringify([{ product_id: productId, qty: 1 }]);
form.appendChild(basket);
var clear = document.createElement('input');
clear.type = 'hidden';
clear.name = 'clear';
clear.value = '1';
form.appendChild(clear);
document.body.appendChild(form);
form.submit();
document.body.removeChild(form);
}; };