/*var colorsTableRow1=new Array('#000000','#FF0000','#00FF00','#0000FF','#FFFF00','#00FFFF','#FF00FF','#AAAAAA');
var colorsTableRow2=new Array('#808080','#800000','#008000','#000080','#808000','#008080','#800080','#333333');
var strokesTable=new Array(1,2,3,4);
var legendStyleTableRow=new Array('#000000','#FF0000','#00FF00','#0000FF','#FFFF00','#00FFFF','#FF00FF','#AAAAAA','#808080','#800000','#008000','#000080','#808000','#008080','#800080','#333333','#404040','#400000','#004000','#000040','#404000','#004040','#400040','#666666','#B0B0B0','#B00000','#00B000','#0000B0','#B0B000','#00B0B0','#B000B0','#BBBBBB','#D0D0D0','#D00000','#00D000','#0000D0','#D0D000','#00D0D0','#D000D0','#DDDDDD');*/

var coordinatesHTML = '<div id="coordinatesDiv" style="cursor:hand;position:absolute;top:90px;left:45px;width:400;height:400; z-index: 4000; visibility: hidden" onclick="getCoordinates()">';
	coordinatesHTML+='<v:rect strokecolor="#A8A6A6" id="coordinatesrect" style="position:absolute;top:0px;left:0px;width:400;height:400;z-index:3000">';
	coordinatesHTML+='		<v:stroke opacity="0" color="red"/>';
	coordinatesHTML+='		<v:fill opacity="0" color="red"/>';
	coordinatesHTML+='	</v:rect>';
	coordinatesHTML+='</div>';

extensions.push('coordinates');
addExtensionHTML(coordinatesHTML);

function coordinatesBegin() {
	commands['coordinatesToggle']='coordinatesTogglePrimary';
	eventHandlers.push('coordinates');

	eventHandlersStatus['coordinates']=false;
	coordinatesConfigure();
} 

function processUrlWithCoordinates(url,x,y) {
	
	url=url.replace(/\$x/g,x);
	url=url.replace(/\$y/g,y);
	
	var vars=url.match(/\$[a-zA-Z]+/g);
	var applicationArgs=mapInfo.getProperty('applicationArguments');
	for(var pos=0;pos<vars.length;pos++) {
		var currentVar=vars[pos];	
		url=url.replace(currentVar,applicationArgs[currentVar.substring(1)]);
	}

	return url;
}

function getCoordinates() {
	/*var x=event.clientX-mapOffsetX-consolePosX;
	var y=event.clientY-mapOffsetY-consolePosY;*/
	var x=event.offsetX;
	var y=event.offsetY;
	
	var realX=x/mapWidth*map.realRange.getDeltaX()+map.realRange.minX;
	var realY=(mapHeight-y)/mapHeight*map.realRange.getDeltaY()+map.realRange.minY;
	if(mapInfo.getProperty('coordinatesCallExternal')) {
		if(mapInfo.getProperty('coordinatesCallExternalType')=='hidden') {
			var url=mapInfo.getProperty('coordinatesCallExternalUrl');
			window.coordinatesFrame.location.href=processUrlWithCoordinates(url,realX,realY);
			setTimeout('checkCoordinates()',500);
		}

	}
}

function checkCoordinates() {
	
	if(window.coordinatesFrame.document.readyState=='complete') {
		var result=window.coordinatesFrame.document.body.innerHTML;
		
		var m=result.match(/<PRE>(.*?)<\/PRE>/i);
		result=m[1].replace(/\s+/g,'');
		if(result!='')
			alert(m[1]);
		else {
			alert('Civico aggiornato');
			window.close();
		}
	}
	else
		setTimeout('checkCoordinates()',500);

}

function coordinatesToggle(secondary) {
	
	var coordsdiv=document.getElementById('coordinatesDiv');
	
	var coordsrect=document.getElementById('coordinatesrect');
	coordsdiv.style.pixelLeft=mapOffsetX-3;
	coordsdiv.style.pixelTop=mapOffsetY-3;
	/*panrect.style.pixelLeft=mapOffsetX-1;
	panrect.style.pixelTop=mapOffsetY-1;*/
	coordsdiv.style.width=mapWidth+8;
	coordsdiv.style.height=mapHeight+7;
	coordsrect.style.width=mapWidth+8;
	coordsrect.style.height=mapHeight+7;
	if(coordsdiv.style.visibility=='hidden') {
		
		eventListeners.fireEvent('enableEvent','coordinates');
		coordsdiv.style.visibility = 'visible';
		enableEvent('coordinates');
	}
	else {
		/*document.getElementById('puls_pan').onmouseover=new Function("MM_swapImage('puls_pan','','images/new_pulsantiera_r1_c7_f2.gif',1);");
		document.getElementById('puls_pan').onmouseout=new Function("MM_swapImgRestore()");
		document.getElementById('puls_pan').src='images/new_pulsantiera_r1_c7.gif';*/
		eventListeners.fireEvent('disableEvent','coordinates');
		disableEvent('coordinates');
		coordsdiv.style.visibility = 'hidden';
		coordsdiv.onclick=getCoordinates;
		coordsdiv.onmousemove=null;
	}
	if(!secondary)
		actionEnd();
}

function coordinatesTogglePrimary(permanent) {
	waitingOn();
	if(permanent)
		mapInfo.setProperty('defaultEvent','coordinates');
	coordinatesToggle(false);
	endToggle();
}



