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] }; map = new GMap2(document.getElementById("svmap_canvas"), mapOptions); var mapControl = new GMapTypeControl(); map.addControl(mapControl); map.addControl(new GSmallMapControl()); map.addControl(new GOverviewMapControl()); map.disableDoubleClickZoom(); map.disableScrollWheelZoom(); bounds = new GLatLngBounds; map.setCenter(new GLatLng(50.370513,3.083682), 6); var marker1 = new GIcon(); marker1.image = "http://www.atwautogas.com/components/com_svmap/markers/blue.png"; marker1.iconSize = new GSize(12,20); marker1.iconAnchor = new GPoint(6,20); marker1.infoWindowAnchor = new GPoint(6,10); businesses = []; addBusinesses(); geocodes = [[1,marker1,"ATW autogas",,,'
48 bis, route Provinciale
Wasmes
',"/localisation/business/atw-autogas/1","Belgique Wasmes 7340 48 bis, route Provinciale "]]; geocodeBusinesses(); } } 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 = '