140 lines
6.3 KiB
JavaScript
Vendored
140 lines
6.3 KiB
JavaScript
Vendored
if (document.querySelector(".traceability")) {
|
|
let route = require("../modules/route").default.methods.route;
|
|
|
|
document.addEventListener("DOMContentLoaded", function(event) {
|
|
let hash = window.location.hash;
|
|
if (hash !== undefined) {
|
|
if (hash === "#finder") {
|
|
window.scrollTo(0, document.getElementById("finder").offsetTop);
|
|
}
|
|
}
|
|
});
|
|
|
|
let btnTracaHowTo = document.querySelector(".btnTracaHowTo");
|
|
let btnTracaCloseHowTo = document.querySelector(".btnTracaCloseHowTo");
|
|
let btnTracaBreeder = document.querySelector(".btnTracaBreeder");
|
|
let btnCloseTracaBreeder = document.querySelector(".btnCloseTracaBreeder");
|
|
|
|
if (btnTracaHowTo) {
|
|
btnTracaHowTo.addEventListener("click", function (event) {
|
|
document.getElementById("img-traca").style.opacity = 0;
|
|
document.getElementById("img-etiquette").style.opacity = 1;
|
|
document.getElementById("img-etiquette").style.top = "5%";
|
|
});
|
|
}
|
|
if (btnTracaCloseHowTo) {
|
|
btnTracaCloseHowTo.addEventListener("click", function (event) {
|
|
document.getElementById("img-etiquette").style.top = "10%";
|
|
document.getElementById("img-etiquette").style.opacity = 0;
|
|
document.getElementById("img-traca").style.opacity = 1;
|
|
});
|
|
}
|
|
if (btnCloseTracaBreeder) {
|
|
btnCloseTracaBreeder.addEventListener("click", function (event) {
|
|
document.getElementById("result-traca").style.opacity = 0;
|
|
document.getElementById("result-traca").style.top = "20%";
|
|
document.getElementById("how-to").style.opacity = 1;
|
|
});
|
|
}
|
|
if (btnTracaBreeder) {
|
|
// Appel AJAX et traitement de la réponse pour la traçabilité
|
|
btnTracaBreeder.addEventListener("click", function (event) {
|
|
if (
|
|
document.getElementById("code_traceability").value.length === 10
|
|
) {
|
|
document.getElementById("erreur-traca").style.transform =
|
|
"scaleY(0)";
|
|
axios.get(
|
|
route("brand.traceability-search") +
|
|
"?code=" +
|
|
document.getElementById("code_traceability").value
|
|
).then(function (res) {
|
|
res = res.data;
|
|
switch (res.code) {
|
|
case 200:
|
|
// Cas OK
|
|
if (typeof res.redirect !== "undefined") {
|
|
window.location = route("ocb.breeders") + '/' + res.redirect;
|
|
return;
|
|
}
|
|
|
|
document.getElementById(
|
|
"how-to"
|
|
).style.opacity = 0;
|
|
|
|
document.getElementById(
|
|
"result-traca"
|
|
).style.opacity = 1;
|
|
document.getElementById(
|
|
"result-traca"
|
|
).style.top = 0;
|
|
document.getElementById(
|
|
"icon-traca"
|
|
).className = "icon-eleveur";
|
|
|
|
document.getElementById(
|
|
"traca-title"
|
|
).innerHTML = "Votre éleveur :";
|
|
document.getElementById(
|
|
"traca-name"
|
|
).innerHTML =
|
|
res.breeder.last_name +
|
|
" " +
|
|
res.breeder.first_name;
|
|
document.getElementById(
|
|
"traca-desc"
|
|
).innerHTML =
|
|
"Éleveur de volailles Le Gaulois à " +
|
|
(res.breeder.place ?? res.breeder.city) +
|
|
" (" +
|
|
res.breeder.postal_code.substring(
|
|
0,
|
|
2
|
|
) +
|
|
")";
|
|
break;
|
|
default:
|
|
document.getElementById(
|
|
"how-to"
|
|
).style.opacity = 0;
|
|
|
|
document.getElementById(
|
|
"result-traca"
|
|
).style.opacity = 1;
|
|
document.getElementById(
|
|
"result-traca"
|
|
).style.top = 0;
|
|
document.getElementById(
|
|
"icon-traca"
|
|
).className = "icon-close";
|
|
|
|
document.getElementById(
|
|
"traca-title"
|
|
).innerHTML = "Oups !";
|
|
document.getElementById(
|
|
"traca-name"
|
|
).innerHTML =
|
|
"Le numéro de ce produit ne correspond pas à un produit Le Gaulois";
|
|
document.getElementById(
|
|
"traca-desc"
|
|
).innerHTML = "";
|
|
break;
|
|
}
|
|
}).catch(function (error) {
|
|
document.getElementById("how-to").style.opacity = 0;
|
|
document.getElementById("result-traca").style.opacity = 1;
|
|
document.getElementById("result-traca").style.top = 0;
|
|
document.getElementById("icon-traca").className = "icon-close";
|
|
document.getElementById("traca-title").innerHTML = "Oups !";
|
|
document.getElementById("traca-name").innerHTML =
|
|
"Le numéro de ce produit ne correspond pas à un produit Le Gaulois";
|
|
document.getElementById("traca-desc").innerHTML = "";
|
|
console.error(error)
|
|
})
|
|
} else {
|
|
document.getElementById("erreur-traca").style.transform =
|
|
"scaleY(1)";
|
|
}
|
|
});
|
|
}
|
|
}
|