1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
| function gestionClient(id)
{
/([0-9]+\.[0-9]+).+([0-9]+\.[0-9]+)/.exec(clients[id].latlngDepart);
if(RegExp.$1 != false && RegExp.$2 != false)
{
var icone = new google.maps.MarkerImage('../img/Rendez-vous.png',
new google.maps.Size(32, 32), new google.maps.Point(0, 0),
new google.maps.Point(16, 32));
var marker = new google.maps.Marker({ position: new google.maps.LatLng(RegExp.$1 , RegExp.$2),icon: icone,map: map}) ;
map.panTo(marker.position);
map.setZoom(8);
}
else
{
alert('Erreur(s) lors de la geolocalisation.');
}
}
function searchAddress(id)
{
geocoder1.geocode(
// objet comportant les paramètres de ta requête
{
address: clients[id].adresseDepart
},
// function anonyme de callback qui sera executé après ta requête
function(results, status)
{
if (status == google.maps.GeocoderStatus.OK)
{
// une fois la réponse récupérée, on l'assigne dans le tableau client correspondant
clients[id].latlngDepart = results[0].geometry.location;
// puis on traite notre client
gestionClient(id);
}
else
{
alert('Le géocodage 2 a échoué.');
}
}
);
/*geocoder2.geocode(
// objet comportant les paramètres de ta requête
{
address: clients[id].adresseArrivee
},
// function anonyme de callback qui sera executé après ta requête
function(results, status)
{
if (status == google.maps.GeocoderStatus.OK)
{
// une fois la réponse récupérée, on l'assigne dans le tableau client correspondant
clients[id].latlngArrivee = results[0].geometry.location;
// puis on traite notre client
gestionClient(id);
}
else
{
alert('Le géocodage 2 a échoué.');
}
}
);*/
// pas de return ! le traitement se fera dans le callback en tant voulu
}
function showMarkers(id)
{
if (clients[id].latlngDepart == 'inconnu' || clients[id].latlngArrivee == 'inconnu')
{
searchAddress(id);
}
} |
Partager