//<![CDATA[

function load() {
	
	if (GBrowserIsCompatible()) {
		
		var map = new GMap2(document.getElementById("map"));
		
		// PULSANTI DI NAVIGAZIONE SULLA SINISTRA IN VERSIONE SMALL
		map.addControl(new GSmallMapControl());
		
		// INSERISCE I PULSANTI PER CAMBIARE LA MODALITÀ DI VISUALIZAZIONE (MAPPA, SATELLITE ED IBRIDA), IN ALTO A DESTRA DELLA MAPPA.
		map.addControl(new GMapTypeControl());

		// LA PRIMA È LA LATITUDINE IN GRADI ESADECIMALI, LA SECONDA È LA LONGITUDINE SEMPRE IN GRADI ESADECIMALI.
		// IL VALORE 13 È L'INGRANDIMENTO DELLA MAPPA, PIÙ IL VALORE BASSO MAGGIORE È LA DISTANZA, UNO ZOOM PIÙ ELEVATO RENDE VICINO L'OBIETTIVO.
		map.setCenter(new GLatLng(40.3527, 18.1750), 15);  // COORDINATE LECCE
		    	
		
		// CREA UN NUOVO MARKER NEL PUNTO SPECIFICATO CON UNA DESCRIZIONE HTML ASSOCIATA
        function createMarker(point,description) {
        	
        	var marker = new GMarker(point);
          	GEvent.addListener(marker, "click", function() {
            	marker.openInfoWindowHtml(description);
          	});
          return marker;
        }  
			        
		GDownloadUrl("google_maps.xml", function(data, responseCode) {
          
			if(responseCode == 200) {
				
				var xml = GXml.parse(data);
				var markers = xml.documentElement.getElementsByTagName("marker");
				
				for (var i=0; i < markers.length; i++) {
							        
					var point    = new GLatLng(parseFloat(markers[i].getAttribute("lat")), parseFloat(markers[i].getAttribute("lng")));
					var name     = markers[i].getAttribute("name");    // descrizione
					var adress   = markers[i].getAttribute("adress");  //indirizzo
					var immagine = markers[i].getAttribute("img");     //immagine
					
					var html   = "<br /><div align='left'><b>"+name+"</b><br /><img src='"+immagine+"'><br />"+adress+"</div>";
				//	var html   = "<br /><div align='left'><b>"+name+"</b><br />"+adress+"</div>";
					
				//	map.addOverlay(new GMarker(point));				
					map.addOverlay(createMarker(point,html));
			/*	
					geocoder = new GClientGeocoder();
					geocoder.getLocations(adress, addAddressToMap);
					
					 function addAddressToMap(response) {
					//  map.clearOverlays();
			
						if (!response || response.Status.code != 200) {
							alert("questo punto non è raggiungibile");
							window.close();
						}
						else {							
							place = response.Placemark[0];				
						    point = new GLatLng(place.Point.coordinates[1],
						                        place.Point.coordinates[0]);
							map.setCenter(point, 14);   // parametro visualizzazione mappa nel dettaglio
							map.addOverlay(createMarker(point,html));
						}
					}
				*/	
				}				
			} 
			else if(responseCode == -1) {
	    		alert("Data request timed out. Please try later.");
          	} 
          	else { 
            	alert("Request resulted in error. Check XML file is retrievable.");
        	}
		});				
	}		
}
//]]>
