Linux SRV-16 6.18.44-paas #1 SMP PREEMPT_DYNAMIC Thu Aug 13 10:08:12 UTC 2026 x86_64
/
proc
/
212
/
root
/
proc
/
self
/
root
/
srv
/
data
/
web
/
vhosts
/
www.impressionrapide.fr
/
htdocs
/
public
/
js
/
//proc/212/root/proc/self/root/srv/data/web/vhosts/www.impressionrapide.fr/htdocs/public/js/cart.js
addEventListener("DOMContentLoaded", () => { let quantities = document.getElementsByClassName("quantity"); let submit = document.getElementById("submit"); let totalPrice = document.getElementById("totalPrice"); let tva = document.getElementById("tvaCost"); let loadingImg = `<img src='/images/loading.gif' alt="loading" width="20" height="20">`; function disableSubmit() { submit.style.pointerEvents = "none"; } for (let i = 0; i < quantities.length; i++) { quantities[i].addEventListener("input", () => { disableSubmit(); let id = quantities[i].getAttribute("data-item-id"); let quantity = quantities[i].value; if (quantity == "" || quantity < 1) { quantities[i].value = 1; quantity = 1; } let request = new XMLHttpRequest(); request.open("POST", `/panier/${id}/modifier-quantite/${quantity}`); document.getElementById("recap-panier").classList.add("loading"); actualiseArticlePrices() request.onload = () => { totalPrice.innerText = Number(request.response * 1.2).toFixed(2) + " €"; tva.innerText = Number(request.response * 0.2).toFixed(2); submit.innerHTML = "VALIDER MON PANIER"; if (request.response < 300) { document.getElementById("value").style.right = 100 - (request.response / 300 * 100) + "%"; document.getElementById("left").innerText = 300 - request.response; document.getElementById("value-reached").style.display = "none"; document.getElementById("value-to-buy").style.display = "block"; if(document.getElementById("expeditionCost")) document.getElementById("expeditionCost").innerHTML = "20,00 €"; } else { document.getElementById("value").style.right = "-10px"; document.getElementById("value-to-buy").style.display = "none"; document.getElementById("value-reached").style.display = "block"; if(document.getElementById("expeditionCost")) document.getElementById("expeditionCost").innerHTML = "0 €"; } allowSubmit(); document.getElementById("recap-panier").classList.remove("loading"); } request.send(); }); } function allowSubmit() { submit.style.pointerEvents = "all"; } let totalArticles = document.getElementsByClassName("total-article"); let recapPrice = document.getElementsByClassName("recap-item-price"); let recapQuantity = document.getElementsByClassName("recap-item-quantity"); function actualiseArticlePrices() { for (let j = 0; j < totalArticles.length; j++) { let basePrice = totalArticles[j].getAttribute("data-base-price") totalArticles[j].innerHTML = (basePrice * quantities[j].value).toFixed(2); recapPrice[j].innerHTML = (basePrice * quantities[j].value).toFixed(2); recapQuantity[j].innerText = quantities[j].value } } });