Files
stagiaire/pages/css/devis.js
T
2026-06-22 16:18:48 +02:00

107 lines
3.2 KiB
JavaScript

const affichageNb = document.getElementById("nb_vehicules");
const affichageGéo = document.getElementById("géolocalisation");
const affichageConso = document.getElementById("consommation");
const boutonPlus = document.getElementById("plus");
const boutonMoins = document.getElementById("moins");
const mot_vehicules = document.getElementById("mot_vehic");
const PRIX_GPS = 30;
const PRIX_CONSOMMATION = 15;
const zoneMsg = document.getElementById("msg");
const txt_restant = document.getElementById("txt_restant");
const MAX = 500;
const formulaire = document.querySelector("form");
console.log("dans le local : ", localStorage.getItem("nbVehicules"));
const services = [
{
nom: "Géolocalisation",
description: "Suivi en temps réel",
prix: "30€/véhicule/mois",
},
{ nom: "Odomètre", description: "Kilométrage précis", prix: "200€" },
{
nom: "Consommation",
description: "Carburant consommé",
prix: "15€/véhicule/mois",
},
{
nom: "Impact carbone",
description: "CO₂ rejeté",
prix: "30€/véhicule/mois",
},
];
const corps = document.getElementById("services");
let lignes = "";
let nbVehicules;
if (localStorage.getItem("nbVehicules") !== null) {
nbVehicules = localStorage.getItem("nbVehicules");
} else {
nbVehicules = 1;
}
function mettreAJourGPS() {
affichageNb.textContent = nbVehicules;
affichageGéo.textContent = nbVehicules * PRIX_GPS;
}
function mettreAJourCONSO() {
affichageNb.textContent = nbVehicules;
affichageConso.textContent = nbVehicules * PRIX_CONSOMMATION;
}
function mettreAJourTOTAL() {
affichageNb.textContent = nbVehicules;
affichageGéo.textContent = nbVehicules * PRIX_GPS;
affichageConso.textContent = nbVehicules * PRIX_CONSOMMATION;
}
boutonPlus.addEventListener("click", function () {
nbVehicules = nbVehicules + 1;
if (nbVehicules > 99) {
nbVehicules = nbVehicules - 1;
}
if (nbVehicules === 1) {
mot_vehicules.textContent = "véhicule";
} else {
mot_vehicules.textContent = "véhicules";
}
console.log("rajout en cours :", nbVehicules);
localStorage.setItem("nbVehicules", nbVehicules);
console.log("dans le store", localStorage.getItem("nbVehicules"))(
mettreAJourGPS(),
mettreAJourCONSO(),
);
});
boutonMoins.addEventListener("click", function () {
if (nbVehicules > 1) {
nbVehicules = nbVehicules - 1;
}
if (nbVehicules === 1) mot_vehicules.textContent = "véhicule";
else {
mot_vehicules.textContent = "véhicules";
}
localStorage.setItem("nbVehicules", nbVehicules);
(mettreAJourGPS(), mettreAJourCONSO());
});
zoneMsg.addEventListener("input", function () {
const reste = MAX - zoneMsg.value.length;
txt_restant.textContent = reste;
txt_restant.style.color = reste < 50 ? "red" : "black";
});
formulaire.addEventListener("submit", function (evenement) {
if (zoneMsg.value.trim() === "") {
evenement.preventDefault();
alert("Merci de remplir tous les champs");
}
});
for (const service of services) {
console.log(service.nom + " _ " + service.description + " _ " + service.prix);
}
for (const service of services) {
lignes =
lignes +
`
<tr>
<td>${service.nom}</td>
<td>${service.description}</td>
<td>${service.prix}</td>
</tr>`;
}
corps.innerHTML = lignes;