var map; var bounds; var businesses; var geocodes; var cntGeocoded = 0; var directionsPanel; var directions; var focusedBusiness; function generateMap() { if (GBrowserIsCompatible() && document.getElementById("svmap_canvas") != null) { geocoder = new GClientGeocoder(); geocoder.setCache(null); var mapOptions = { mapTypes:[G_NORMAL_MAP,G_HYBRID_MAP] }; map = new GMap2(document.getElementById("svmap_canvas"), mapOptions); var mapControl = new GMapTypeControl(); map.addControl(mapControl); map.addControl(new GLargeMapControl()); map.addControl(new GOverviewMapControl()); map.enableDoubleClickZoom(); map.disableScrollWheelZoom(); bounds = new GLatLngBounds; map.setCenter(new GLatLng(43.56895708029879,1.6272532939910889), 15); var marker13 = new GIcon(); marker13.image = "http://www.stpierredelages.fr/SITE/components/com_svmap/markers/end.png"; marker13.iconSize = new GSize(20,34); marker13.iconAnchor = new GPoint(10,34); marker13.infoWindowAnchor = new GPoint(10,17); var marker16 = new GIcon(); marker16.image = "http://www.stpierredelages.fr/SITE/components/com_svmap/markers/letter-c.png"; marker16.iconSize = new GSize(20,34); marker16.iconAnchor = new GPoint(10,34); marker16.infoWindowAnchor = new GPoint(10,17); var marker20 = new GIcon(); marker20.image = "http://www.stpierredelages.fr/SITE/components/com_svmap/markers/letter-g.png"; marker20.iconSize = new GSize(20,34); marker20.iconAnchor = new GPoint(10,34); marker20.infoWindowAnchor = new GPoint(10,17); var marker26 = new GIcon(); marker26.image = "http://www.stpierredelages.fr/SITE/components/com_svmap/markers/letter-m.png"; marker26.iconSize = new GSize(20,34); marker26.iconAnchor = new GPoint(10,34); marker26.infoWindowAnchor = new GPoint(10,17); businesses = [[1,marker26,"Mairie",43.56923692668282,1.6270655393600464,'

Mairie

Avenue de Toulouse
Saint-Pierre de Lages
05.61.83.73.97.

Les services administratifs sont ouverts :

le lundi de 14 heures à 18 heures,

le mardi de 8 heures à midi,

le mercredi de 8 heures à midi,

le jeudi de 13 heures à 17 heures,

le vendredi de 14 heures à 17 heures.

',"/SITE/index.php?option=com_svmap&layout=business&business=1&name=mairie","France Saint-Pierre de Lages 31570 Avenue de Toulouse"],[2,marker20,"Groupe scolaire de Saint-Pierre de Lages",43.56906590960264,1.6281598806381226,'

Groupe scolaire de Saint-Pierre de Lages

Route de Vallesvilles
Saint-Pierre de Lages
05.61.83.73.93.

',"/SITE/index.php?option=com_svmap&layout=business&business=2&name=groupe-scolaire-de-saint-pierre-de-lages","France Saint-Pierre de Lages 31570 Route de Vallesvilles"],[3,marker13,"Eglise de Saint-Pierre de Lages",43.56603416257986,1.6277360916137695,'

Eglise de Saint-Pierre de Lages

Chemin de l\'église
Saint-Pierre de Lages

',"/SITE/index.php?option=com_svmap&layout=business&business=3&name=eglise-de-saint-pierre-de-lages","France Saint-Pierre de Lages 31570 Chemin de l\'église"],[4,marker16,"Collège de Saint-Pierre de Lages",43.562189843426324,1.640760898590088,'

Collège de Saint-Pierre de Lages

Chemin du Combebernat
Saint-Pierre de Lages

',"/SITE/index.php?option=com_svmap&layout=business&business=4&name=collge-de-saint-pierre-de-lages","France Saint-Pierre de Lages 31570 Chemin du Combebernat"]]; addBusinesses(); } } function setBounds(bounds) { map.setZoom(map.getBoundsZoomLevel(bounds)); map.setCenter(bounds.getCenter()); } function geocodeBusinesses() { if (cntGeocoded < geocodes.length) { geocoder.getLocations(geocodes[cntGeocoded][7], addressResolved); } } function addressResolved(response) { var delay = 0; if (response.Status.code == 620) { delay = 500; } else { if (response.Status.code == 200) { var address = response.Placemark[0]; geocodes[cntGeocoded][3] = address.Point.coordinates[1]; geocodes[cntGeocoded][4] = address.Point.coordinates[0]; addBusiness(geocodes[cntGeocoded]); } // Move onto the next address; this skips bad addresses, too. cntGeocoded += 1; } window.setTimeout(geocodeBusinesses, delay); } function addBusinesses() { for (var i=0; i < businesses.length; i++) { addBusiness(businesses[i]); } } function addBusiness(business) { var point = new GLatLng(business[3], business[4]); var markerOptions = { icon:business[1], draggable: false, "title":business[2] }; var marker = new GMarker(point, markerOptions); var form = '
Trouver un itinéraire : A partir de ce lieu - Vers ce lieu
'; var info = business[5]; info += form; var div = document.createElement("div"); div.style.width = "400px"; div.style.height = "200px"; var pano = new GStreetviewPanorama(div); pano.setLocationAndPOV(point); GEvent.addListener(pano, "error", function() { marker.bindInfoWindowHtml(info); } ); var tabs = [new GInfoWindowTab('Info', info),new GInfoWindowTab('StreetView', div)]; marker.bindInfoWindowTabsHtml(tabs); GEvent.addListener(marker, "infowindowopen", function() { pano.show(); }); GEvent.addListener(marker, "infowindowbeforeclose", function() { pano.hide(); }); map.addOverlay(marker); bounds.extend(point); setBounds(bounds); } function showFormFrom() { document.getElementById('formFrom').style.display = 'block'; document.getElementById('formTo').style.display = 'none'; return false; } function showFormTo() { document.getElementById('formTo').style.display = 'block'; document.getElementById('formFrom').style.display = 'none'; return false; } function findDirections(from, to) { if (directions == null) { directionsPanel = document.getElementById('svmap_directions_panel'); directions = new GDirections(map, directionsPanel); GEvent.addListener(directions, "error", directionsError); } else { directions.clear(); } directions.load("from: "+from+" to: "+to); } function directionsError(response) { status = response.getStatus(); switch (status.code) { case 602: message = "Aucune localisation gĂ©ographic n'a pu ĂȘtre trouvĂ© pour cette adresse. Cela peut venir du fait que l'adresse est trop rĂ©cente, ou incorrecte."; break; case 603: message = "L'itinĂ©raire demandĂ© ne peut ĂȘtre communiquĂ© pour des raisons lĂ©gales ou contractuelles."; break; case 604: message = "L'itinĂ©raire demandĂ© n'a pas pu ĂȘtre trouvĂ©. Cela peut venir du fait qu'aucun itinĂ©raire n'existe entre ces deux points, ou parcequ'il n'y a pas d'informations de localisation dans cette rĂ©gion."; break; default: message = "L'itinĂ©raire demandĂ© n'a pas pu ĂȘtre trouvĂ©."; break; } alert(message); }