var iteratorCoordinate = 0;
var markers = new Array();
var globalMap;
var lastZoom = 0;
var currentPoint = "";

function inizializza()
{
	if(contesto=="tutti")
	for(k=0;k<contestiPossibili.length;k++)
	{
		contesto = contestiPossibili[k];
		// cerco l'eventuale punto richiesto 
		//printMsgBox("inizializza");
		nuovoContesto = false;
		if(startPoint != null)
		{
			tmpContesto = findStartPoint(startPoint);
			if(tmpContesto!=null) 
			{
				contesto = tmpContesto;
				nuovoContesto = true;
				//printMsgBox("nuovoContesto: "+nuovoContesto);
			}
		}
		if(!nuovoContesto) 
			addAllCoordinate(contesto);
	
		//printMsgBox("map");
		//divMap.style.width = widthImg;
		//divMap.style.Height = heightImg;
		/*
		globalMap = new GMap(divMap,[G_MAP_TYPE, G_SATELLITE_TYPE, G_HYBRID_TYPE],widthImg,heightImg);
		globalMap.setMapType(G_MAP_TYPE);
		globalMap.addControl(new GSmallMapControl());
		globalMap.addControl(new GMapTypeControl());
		*/
		//globalMap.setCenter(new GLatLng(45.05,7.6666667), 12);
		//globalMap.panTo(new GLatLng(45.05,7.6666667));
	
		if(nuovoContesto)
		{
			printMsgBox("contesto: "+contesto);
			include_dom(""+pathWeb+"/js/defs/"+contesto+"_coordinate.js");
			setTimeout("includi_('" + contesto + "', '" + startPoint + "')",50);
		} 
		else
		{
			zoomValue = getInt(zoomDefault); 
			getDefaults(contesto);
			// if(contesto) eval("getStruct_"+contesto+"()");
			// mi posiziono al centro del 
			lastZoom = zoomValue;
			//printMsgBox("creo la mappa");
			var divMap = document.getElementById("map");
			globalMap = new GMap2(divMap,[G_MAP_TYPE, G_SATELLITE_TYPE, G_HYBRID_TYPE],widthImg,heightImg);
			globalMap.setCenter(centerPoint.getLatLngObj(), zoomValue);
			globalMap.panTo(centerPoint.getLatLngObj());
			globalMap.enableContinuousZoom(); 
			globalMap.enableDoubleClickZoom(); 
			globalMap.addControl(new GOverviewMapControl()); 
			globalMap.addControl(new GLargeMapControl());
			globalMap.addControl(new GMapTypeControl());
			//printMsgBox("inizializza: "+contesto);
			creaDaCoordinate();
		}
	}

	//if(descrizionePunto!="")
	//		globalMap.openInfoWindow(globalMap.getCenter(),descrizionePunto);

	// creo l'evento di spostamento con relativa visualizzazione coordinate
	GEvent.addListener(globalMap, "moveend", function() 
			{
			var center = globalMap.getCenter();
			var coeffRound = 10000;
			var latLngStr = '(' + (Math.round(center.y*coeffRound)/coeffRound) + ', ' + (Math.round(center.x*coeffRound)/coeffRound) + ')';
				document.getElementById("message").innerHTML = latLngStr;
			}
	);
	// creo l'evento di spostamento con relativa visualizzazione coordinate
	GEvent.addListener(globalMap, "zoomend", function() 
			{
				var currentWidth;
				var currentHeight;
				var oldImg = "";
				var currentZoom = globalMap.getZoom();
				clearIconsState();
				globalMap.clearOverlays();
				for(var i=0;(i < markers.length);i++)
				{
					if(markers[i])
					{
						icon = markers[i].getIcon();
						if(!iconsState[icon.image])
						{
							setIconSize(icon, lastZoom);
							iconsState[icon.image] = true;
						}
/*						markers[i] = getNewGMarkert(markers[i].getPoint(), 
						                            icon, 
						                            markers[i].getInternalId(), 
						                            markers[i].getId(), 
						                            markers[i].getLink(), 
						                            markers[i].getMaxIteratorCoordinate, 
						                            markers[i].getMinIteratorCoordinate, 
						                            markers[i].getTooltip());

						globalMap.addOverlay(markers[i]);
*/
					}
				}
				lastZoom = currentZoom;
				//printMsgBox(lastZoom);
				creaDaCoordinate();
			}
	);
}
