60 lines
2.6 KiB
JavaScript
60 lines
2.6 KiB
JavaScript
document.addEventListener("DOMContentLoaded", () => {
|
|
console.log("DOMContentLoaded");
|
|
const lieuSelect = document.getElementById("sortie_lieu");
|
|
const rueValue = document.getElementById("rue-value");
|
|
const codePostalValue = document.getElementById("codePostal-value");
|
|
const latitudeValue = document.getElementById("latitude-value");
|
|
const longitudeValue = document.getElementById("longitude-value");
|
|
const villeValue = document.getElementById("ville-value");
|
|
|
|
// Vérifier que le champ "lieu" existe
|
|
if (!lieuSelect) {
|
|
console.error("Le champ 'lieu-select' est introuvable.");
|
|
return;
|
|
}
|
|
|
|
console.log("Script chargé. En attente de la sélection d'un lieu.");
|
|
|
|
// Écouter les changements sur le champ "lieu"
|
|
lieuSelect.addEventListener("change", async () => {
|
|
const lieuId = lieuSelect.value;
|
|
|
|
console.log(`Lieu sélectionné : ${lieuId}`);
|
|
|
|
// Si aucun lieu sélectionné, réinitialiser les champs
|
|
if (!lieuId) {
|
|
console.warn("Aucun lieu sélectionné. Réinitialisation des champs.");
|
|
rueValue.textContent = "Renseigner avec le lieu";
|
|
codePostalValue.textContent = "Renseigner avec le lieu";
|
|
latitudeValue.textContent = "Renseigner avec le lieu";
|
|
longitudeValue.textContent = "Renseigner avec le lieu";
|
|
villeValue.textContent = "Renseigner avec le lieu";
|
|
return;
|
|
}
|
|
|
|
try {
|
|
// Requête vers l'API pour récupérer les données du lieu
|
|
console.log(`Envoi de la requête à l'API pour le lieu ID : ${lieuId}`);
|
|
const response = await fetch(`/lieux/${lieuId}`);
|
|
if (!response.ok) {
|
|
throw new Error(`Erreur lors de la récupération des informations (statut ${response.status})`);
|
|
}
|
|
|
|
const data = await response.json();
|
|
console.log("Données reçues depuis l'API :", data);
|
|
|
|
// Mise à jour des champs avec les données récupérées
|
|
rueValue.textContent = data.rue || "Non renseigné";
|
|
codePostalValue.textContent = data.codePostal || "Non renseigné";
|
|
latitudeValue.textContent = data.latitude || "Non renseigné";
|
|
longitudeValue.textContent = data.longitude || "Non renseigné";
|
|
villeValue.textContent = data.ville || "Non renseigné";
|
|
|
|
console.log("Champs mis à jour avec succès.");
|
|
} catch (error) {
|
|
console.error("Erreur lors de la récupération des données :", error);
|
|
alert("Une erreur s'est produite lors de la récupération des informations du lieu.");
|
|
}
|
|
});
|
|
});
|