//<![CDATA[
  if (GBrowserIsCompatible()) {
      var side_bar_html = "";
      var gmarkers = [];
      var htmls = [];
      var i = 0;
      // arrays to hold variants of the info window html with get direction forms open
      var to_htmls = [];
      var from_htmls = [];
var map = null;
//google.load("maps", "2");
 var baseIcon = new GIcon();
        
        baseIcon.iconSize = new GSize(25, 24);
      
        baseIcon.iconAnchor = new GPoint(9, 34);
        baseIcon.infoWindowAnchor = new GPoint(9, 2);
        baseIcon.infoShadowAnchor = new GPoint(18, 25);
		var gdir=new GDirections(map, document.getElementById("directions"));
		
		// === Array for decoding the failure codes ===
      var reasons=[];
      reasons[G_GEO_SUCCESS]            = "Success";
      reasons[G_GEO_MISSING_ADDRESS]    = "Missing Address: The address was either missing or had no value.";
      reasons[G_GEO_UNKNOWN_ADDRESS]    = "Unknown Address:  No corresponding geographic location could be found for the specified address.";
      reasons[G_GEO_UNAVAILABLE_ADDRESS]= "Unavailable Address:  The geocode for the given address cannot be returned due to legal or contractual reasons.";
      reasons[G_GEO_BAD_KEY]            = "Bad Key: The API key is either invalid or does not match the domain for which it was given";
      reasons[G_GEO_TOO_MANY_QUERIES]   = "Too Many Queries: The daily geocoding quota for this site has been exceeded.";
      reasons[G_GEO_SERVER_ERROR]       = "Server error: The geocoding request could not be successfully processed.";
      reasons[G_GEO_BAD_REQUEST]        = "A directions request could not be successfully parsed.";
      reasons[G_GEO_MISSING_QUERY]      = "No query was specified in the input.";
      reasons[G_GEO_UNKNOWN_DIRECTIONS] = "The GDirections object could not compute directions between the points.";

      // === catch Directions errors ===
      GEvent.addListener(gdir, "error", function() {
        var code = gdir.getStatus().code;
        var reason="Code "+code;
        if (reasons[code]) {
          reason = reasons[code]
        } 

        alert("Failed to obtain directions, "+reason);
      });
		
		
function showMap() {

	function loadGmap() {
		

			map = new GMap2(document.getElementById("map"));
			map.addControl(new GOverviewMapControl()); map.addControl(new GSmallMapControl()); map.addControl(new GScaleControl());

			map.setCenter(new GLatLng(45.652045, 8.867654), 14);

		
	}

	loadGmap();
}

/* A lot of the code is taken from other tutorials. */
function createMarker(point,html) {
	var marker = new GMarker(point);
 	GEvent.addListener(marker, "click", function() { marker.openInfoWindowHtml(html); });
	return marker;
   	}

function getMarks(url) { /* pass url during the call. */
	
	map.closeInfoWindow(); /*close any InfoWindows that happen to be open  */
	map.clearOverlays();
  	var request = GXmlHttp.create(); /* use the XML methods  */
    	request.open("GET", url, true);
    	request.onreadystatechange = function() {
     	if (request.readyState == 4) {	
		var xmlDoc = request.responseXML; /* php returns 'XML' */
		var markers = xmlDoc.documentElement.getElementsByTagName("marker"); 
		for (var loop1=0;loop1<markers.length;loop1++){
			var lng = parseFloat(markers[loop1].getAttribute("lat"));  /* data is string. */
			var lat = parseFloat(markers[loop1].getAttribute("lng")); 
			var point = new GLatLng(lat,lng);
			var county = markers[loop1].getAttribute("county");
			//var html = markers[loop1].getAttribute("html");
			var name = "Via per Fagnano Olona 10 , 21058 , Solbiate Olona";
			var html = '<p>Azzen Aria Compressa: <br>Via per Fagnano Olona 10/12 , 21058 , Solbiate Olona </p><p><b>Come raggiungerci:</b></p><p>Inserisci il tuo indirizzo di partenza (indirizzo , citt&agrave;): <form action="javascript:getDirections()"><br> <input type="text" SIZE=40 MAXLENGTH=40 name="daddr" id="daddr" value="" /></p>' +
           '<INPUT value="Calcola il percorso" TYPE="SUBMIT">' +
           '<input type="hidden" id="saddr" value="'+name+"@"+ point.lat() + ',' + point.lng() +
           '"/></form>';
			var marker = createMarker(point,html);
			map.addOverlay(marker);
			}
		}
		};
	request.send(null);
}

 function getDirections() {
        var saddr = document.getElementById("saddr").value;
        var daddr = document.getElementById("daddr").value;
		var url ="http://maps.google.it/maps?f=d&hl=it&geocode=&time=&date=&ttype=&saddr=Via+per+Fagnano+Olona+10+,+Solbiate+Olona&daddr="+daddr+"&sll=45.63004,8.886285&sspn=0.053658,0.160675&ie=UTF8&ll=45.626404,8.854637&spn=0.053662,0.160675&z=13&om=1";
		window.open(url,'mywindow','width=800,height=600,resizable=yes');
        //gdir.load("from: "+saddr+" to: "+daddr);
		//alert(saddr);
      }
  }
//]]>