function showM(id){ 
 	if($("#"+id).css('display')=='block') $("#"+id).hide('fast');
 	else{
	 	$(".submenu").hide(); 
		$("#"+id).show("fast"); 
	}
	return false;		
}

var x = [];
var y = [];
var map = null;
var geocoder = null;

function creaMappa(id,address,desc) {

Array.prototype.max = function(){
	return Math.max.apply({},this)
}
Array.prototype.min = function(){
	return Math.min.apply({},this)
}
  if (GBrowserIsCompatible()) {
    var baseIcon = new GIcon(G_DEFAULT_ICON);
    baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
    baseIcon.iconSize = new GSize(20, 34);
    baseIcon.shadowSize = new GSize(37, 34);
    baseIcon.iconAnchor = new GPoint(9, 34);
    baseIcon.infoWindowAnchor = new GPoint(9, 2);

    function createMarker(point, index) {

      var letteredIcon = new GIcon(baseIcon);
      letteredIcon.image = "http://gmaps-samples.googlecode.com/svn/trunk/markers/red/marker" + index + ".png";

      // Set up our GMarkerOptions object
      markerOptions = { icon:letteredIcon };
      var marker = new GMarker(point, markerOptions);

      GEvent.addListener(marker, "mouseover", function() {
        marker.openInfoWindowHtml("Giorno <b>" + index + "</b>: "+desc[index]);
      });
      return marker;
    }

    geocoder = new GClientGeocoder();
  var tot = address.length;
  for(i=0;i<tot;i++){
        geocoder.getLatLng(address[i],
        function(point) {
          if (!point) {
            //alert(address + " not found");
           } else {
            x.push(point.lat());
            y.push(point.lng());
           }
	    if(i>(tot-2)){

     var map = new GMap2(document.getElementById(id));
var mapControl = new GMapTypeControl();
map.addControl(mapControl);
map.addControl(new GLargeMapControl());
  var tracciato = [];

    var rect = new GLatLngBounds(new GLatLng(x.min(),y.min()),new GLatLng(x.max(),y.max()));
    var zoom = map.getBoundsZoomLevel(rect)-1;
    map.setCenter(rect.getCenter(),zoom);
  var totL = x.length;
  for(a=0;a<totL;a++) tracciato.push(new GLatLng(x[a],y[a]));
  tracciato.push(new GLatLng(x[0],y[0]));
  
    map.addOverlay(new GPolyline(tracciato,"#eb6909",5));	
	var partenza;	
  map.addOverlay(partenza = new GMarker(new GLatLng(x[0],y[0])));
  for(a=1;a<totL;a++){
   	if(x[a-1]!=x[a] || y[a-1]!=y[a]){
		map.addOverlay(createMarker(new GLatLng(x[a],y[a]),a));			
	}
} 
      GEvent.addListener(partenza, "mouseover", function() {
        partenza.openInfoWindowHtml("Partenza");
      });   

	    }
        });
    }

  }
}  