Votre Chauffeur Privé
Marseille • Côte d'Azur
let map; let directionsService; let directionsRenderer; function initMap(){ const marseille = { lat:43.2965, lng:5.3698 }; map = new google.maps.Map( document.getElementById("map"), { zoom:10, center:marseille } ); directionsService = new google.maps.DirectionsService(); directionsRenderer = new google.maps.DirectionsRenderer({ map:map, polylineOptions:{ strokeColor:"#000000", strokeWeight:7 } }); const departInput = document.getElementById("depart"); const arriveeInput = document.getElementById("arrivee"); const autocompleteDepart = new google.maps.places.Autocomplete( departInput, { componentRestrictions:{ country:"fr" } } ); const autocompleteArrivee = new google.maps.places.Autocomplete( arriveeInput, { componentRestrictions:{ country:"fr" } } ); autocompleteDepart.addListener( "place_changed", calculerTrajet ); autocompleteArrivee.addListener( "place_changed", calculerTrajet ); document.getElementById("passagers") .addEventListener("change", calculerTrajet); document.getElementById("valises") .addEventListener("change", calculerTrajet); }
function calculerTrajet(){ const depart = document.getElementById("depart").value; const arrivee = document.getElementById("arrivee").value; if(!depart || !arrivee){ return; } directionsService.route({ origin:depart, destination:arrivee, travelMode:google.maps.TravelMode.DRIVING }, function(result,status){ if(status === "OK"){ directionsRenderer.setDirections(result); const trajet = result.routes[0].legs[0]; const km = trajet.distance.value / 1000; const temps = trajet.duration.text; const minutes = trajet.duration.value / 60; let prix = Math.round(km * 1.5); /* MINIMUM */ if(prix < 20){ prix = 20; } /* TUNNELS */ let supplementTunnel = 0; const trajetTexte = JSON.stringify(result).toLowerCase(); if( trajetTexte.includes("prado") || trajetTexte.includes("carenage") ){ supplementTunnel = 4; } prix += supplementTunnel; /* TRAFIC */ if(minutes > 45){ prix += 5; } if(minutes > 75){ prix += 5; } /* PASSAGERS */ const passagers = parseInt( document.getElementById("passagers").value ); if(passagers === 3){ prix += 5; } if(passagers === 4){ prix += 10; } /* VALISES */ const valises = parseInt( document.getElementById("valises").value ); if(valises > 3){ alert( "❌ Maximum 3 grandes valises autorisées." ); return; } /* AFFICHAGE */ document.getElementById("prix").innerHTML = Math.round(prix) + "€"; document.getElementById("distanceLigne").innerHTML = "Distance : " + km.toFixed(1) + " km"; document.getElementById("tempsLigne").innerHTML = "Temps : " + temps; } }); } document.getElementById("societeCheck") .addEventListener("change", function() { document.getElementById("blocSociete").style.display = this.checked ? "block" : "none"; });
async function envoyerReservation(){ try{ const nom = document.getElementById("nom"); const prenom = document.getElementById("prenom"); const telephone = document.getElementById("telephone"); const email = document.getElementById("email"); const depart = document.getElementById("depart"); const arrivee = document.getElementById("arrivee"); const date = document.getElementById("date"); const heure = document.getElementById("heure"); const prix = document.getElementById("prix"); const societe = document.getElementById("societe"); const siret = document.getElementById("siret"); const adresseSociete = document.getElementById("adresseSociete"); const villeSociete = document.getElementById("villeSociete"); const emailFacturation = document.getElementById("emailFacturation"); if( !nom.value || !prenom.value || !telephone.value || !email.value || !depart.value || !arrivee.value || !date.value || !heure.value ){ alert("Veuillez remplir tous les champs."); return; } if(prix.innerText === "0€"){ alert("Veuillez renseigner un trajet valide."); return; } const form = document.getElementById("reservationForm"); const data = new FormData(form); const reponse = await fetch( "https://api.web3forms.com/submit", { method:"POST", body:data } ); const resultat = await reponse.json(); if(!resultat.success){ alert("Erreur : " + resultat.message); return; } /* ENREGISTREMENT GOOGLE SHEETS */ await fetch( "https://script.google.com/macros/s/AKfycbxjaOeGRZlB9Ut5S4-FoBGbnQ_TtC3Y8nLq0nU_ZfwOG7VzElW7dIS-gyOQc6EVk0t5/exec", { method:"POST", mode:"no-cors", headers:{ "Content-Type":"text/plain" }, body: JSON.stringify({ nom: nom.value, prenom: prenom.value, telephone: telephone.value, email: email.value, depart: depart.value, arrivee: arrivee.value, date: date.value, heure: heure.value, prix: prix.innerText, societe: societe.value, siret: siret.value, adresseSociete: adresseSociete.value, villeSociete: villeSociete.value, emailFacturation: emailFacturation.value }) } ); window.location.href = "https://buy.stripe.com/test_cNiaEX9883rQgiydLs87K00"; } catch(erreur){ alert( "ERREUR : " + (erreur.message || JSON.stringify(erreur)) ); console.log(erreur); } }
© 2026 Costa Transfert - All rights reserved