
var pi=3.14159265358979;var sm_a=6378137.0;var sm_b=6356752.314;var sm_EccSquared=6.69437999013e-03;var UTMScaleFactor=0.9996;var i=0;function FootpointLatitude(y)
{var y_,alpha_,beta_,gamma_,delta_,epsilon_,n;var result;n=(sm_a-sm_b)/(sm_a+sm_b);alpha_=((sm_a+sm_b)/2.0)*(1+(Math.pow(n,2.0)/4)+(Math.pow(n,4.0)/64));y_=y/alpha_;beta_=(3.0*n/2.0)+(-27.0*Math.pow(n,3.0)/32.0)
+(269.0*Math.pow(n,5.0)/512.0);gamma_=(21.0*Math.pow(n,2.0)/16.0)
+(-55.0*Math.pow(n,4.0)/32.0);delta_=(151.0*Math.pow(n,3.0)/96.0)
+(-417.0*Math.pow(n,5.0)/128.0);epsilon_=(1097.0*Math.pow(n,4.0)/512.0);result=y_+(beta_*Math.sin(2.0*y_))
+(gamma_*Math.sin(4.0*y_))
+(delta_*Math.sin(6.0*y_))
+(epsilon_*Math.sin(8.0*y_));return result;}
function MapXYToLatLon(x,y,lambda0,philambda)
{var phif,Nf,Nfpow,nuf2,ep2,tf,tf2,tf4,cf;var x1frac,x2frac,x3frac,x4frac,x5frac,x6frac,x7frac,x8frac;var x2poly,x3poly,x4poly,x5poly,x6poly,x7poly,x8poly;phif=FootpointLatitude(y);ep2=(Math.pow(sm_a,2.0)-Math.pow(sm_b,2.0))/Math.pow(sm_b,2.0);cf=Math.cos(phif);nuf2=ep2*Math.pow(cf,2.0);Nf=Math.pow(sm_a,2.0)/(sm_b*Math.sqrt(1+nuf2));Nfpow=Nf;tf=Math.tan(phif);tf2=tf*tf;tf4=tf2*tf2;x1frac=1.0/(Nfpow*cf);Nfpow*=Nf;x2frac=tf/(2.0*Nfpow);Nfpow*=Nf;x3frac=1.0/(6.0*Nfpow*cf);Nfpow*=Nf;x4frac=tf/(24.0*Nfpow);Nfpow*=Nf;x5frac=1.0/(120.0*Nfpow*cf);Nfpow*=Nf;x6frac=tf/(720.0*Nfpow);Nfpow*=Nf;x7frac=1.0/(5040.0*Nfpow*cf);Nfpow*=Nf;x8frac=tf/(40320.0*Nfpow);x2poly=-1.0-nuf2;x3poly=-1.0-2*tf2-nuf2;x4poly=5.0+3.0*tf2+6.0*nuf2-6.0*tf2*nuf2
-3.0*(nuf2*nuf2)-9.0*tf2*(nuf2*nuf2);x5poly=5.0+28.0*tf2+24.0*tf4+6.0*nuf2+8.0*tf2*nuf2;x6poly=-61.0-90.0*tf2-45.0*tf4-107.0*nuf2
+162.0*tf2*nuf2;x7poly=-61.0-662.0*tf2-1320.0*tf4-720.0*(tf4*tf2);x8poly=1385.0+3633.0*tf2+4095.0*tf4+1575*(tf4*tf2);philambda[0]=phif+x2frac*x2poly*(x*x)
+x4frac*x4poly*Math.pow(x,4.0)
+x6frac*x6poly*Math.pow(x,6.0)
+x8frac*x8poly*Math.pow(x,8.0);philambda[1]=lambda0+x1frac*x
+x3frac*x3poly*Math.pow(x,3.0)
+x5frac*x5poly*Math.pow(x,5.0)
+x7frac*x7poly*Math.pow(x,7.0);return;}
function UTMCentralMeridian(zone)
{var cmeridian;cmeridian=DegToRad(-183.0+(zone*6.0));return cmeridian;}
function UTMXYToLatLon(x,y,zone,southhemi,latlon)
{var cmeridian;x-=500000.0;x/=UTMScaleFactor;if(southhemi)
y-=10000000.0;y/=UTMScaleFactor;cmeridian=UTMCentralMeridian(zone);MapXYToLatLon(x,y,cmeridian,latlon);return;}
function DegToRad(deg)
{return(deg/180.0*pi)}
function RadToDeg(rad)
{return(rad/pi*180.0)}
function ArcLengthOfMeridian(phi)
{var alpha,beta,gamma,delta,epsilon,n;var result;n=(sm_a-sm_b)/(sm_a+sm_b);alpha=((sm_a+sm_b)/2.0)*(1.0+(Math.pow(n,2.0)/4.0)+(Math.pow(n,4.0)/64.0));beta=(-3.0*n/2.0)+(9.0*Math.pow(n,3.0)/16.0)
+(-3.0*Math.pow(n,5.0)/32.0);gamma=(15.0*Math.pow(n,2.0)/16.0)
+(-15.0*Math.pow(n,4.0)/32.0);delta=(-35.0*Math.pow(n,3.0)/48.0)
+(105.0*Math.pow(n,5.0)/256.0);epsilon=(315.0*Math.pow(n,4.0)/512.0);result=alpha*(phi+(beta*Math.sin(2.0*phi))
+(gamma*Math.sin(4.0*phi))
+(delta*Math.sin(6.0*phi))
+(epsilon*Math.sin(8.0*phi)));return result;}
function MapLatLonToXY(phi,lambda,lambda0,xy)
{var N,nu2,ep2,t,t2,l;var l3coef,l4coef,l5coef,l6coef,l7coef,l8coef;var tmp;ep2=(Math.pow(sm_a,2.0)-Math.pow(sm_b,2.0))/Math.pow(sm_b,2.0);nu2=ep2*Math.pow(Math.cos(phi),2.0);N=Math.pow(sm_a,2.0)/(sm_b*Math.sqrt(1+nu2));t=Math.tan(phi);t2=t*t;tmp=(t2*t2*t2)-Math.pow(t,6.0);l=lambda-lambda0;l3coef=1.0-t2+nu2;l4coef=5.0-t2+9*nu2+4.0*(nu2*nu2);l5coef=5.0-18.0*t2+(t2*t2)+14.0*nu2
-58.0*t2*nu2;l6coef=61.0-58.0*t2+(t2*t2)+270.0*nu2
-330.0*t2*nu2;l7coef=61.0-479.0*t2+179.0*(t2*t2)-(t2*t2*t2);l8coef=1385.0-3111.0*t2+543.0*(t2*t2)-(t2*t2*t2);xy[0]=N*Math.cos(phi)*l
+(N/6.0*Math.pow(Math.cos(phi),3.0)*l3coef*Math.pow(l,3.0))
+(N/120.0*Math.pow(Math.cos(phi),5.0)*l5coef*Math.pow(l,5.0))
+(N/5040.0*Math.pow(Math.cos(phi),7.0)*l7coef*Math.pow(l,7.0));xy[1]=ArcLengthOfMeridian(phi)
+(t/2.0*N*Math.pow(Math.cos(phi),2.0)*Math.pow(l,2.0))
+(t/24.0*N*Math.pow(Math.cos(phi),4.0)*l4coef*Math.pow(l,4.0))
+(t/720.0*N*Math.pow(Math.cos(phi),6.0)*l6coef*Math.pow(l,6.0))
+(t/40320.0*N*Math.pow(Math.cos(phi),8.0)*l8coef*Math.pow(l,8.0));return;}
function LatLonToUTMXY(lat,lon,zone,xy)
{MapLatLonToXY(lat,lon,UTMCentralMeridian(zone),xy);xy[0]=xy[0]*UTMScaleFactor+500000.0;xy[1]=xy[1]*UTMScaleFactor;if(xy[1]<0.0)
xy[1]=xy[1]+10000000.0;return zone;}
var _screenWidthCm=32.0;var _screenSize=1024.0;function getMetersByPixel(){if(getWidth()>0){extentWidth=top.getMap().getCurrentExtent().getXMax()-top.getMap().getCurrentExtent().getXMin();return(getDistanceInMeters(extentWidth)/getWidth());}
else return 0.0;}
function getMetersByPixel2(realWidth,pixelWidth){if(getWidth()>0){return(getDistanceInMeters(realWidth)/pixelWidth);}
else return 0.0;}
function getScale2(realWidth,pixelWidth){metersPerPixel=getMetersByPixel2(realWidth,pixelWidth);centimetersPerPixelMap=metersPerPixel*100;centimetersPerPixelDevice=_screenWidthCm/_screenSize;scale=centimetersPerPixelMap/centimetersPerPixelDevice;scale=scale*(1-0.11417275);scale=Math.round(scale);return scale;}
function getWidth(){return parseInt(map.mapWidthPX);}
function getHeight(){return parseInt(map.mapHeightPX);}
function getScale(){extentWidth=map.cBounds[2]-map.cBounds[0];var num=parseInt(getScale2(extentWidth,getWidth()));var nNmb=num.toString();var sRes="";for(var j,i=nNmb.length-1,j=0;i>=0;i--,j++){sRes=nNmb.charAt(i)+((j>0)&&(j%3==0)?".":"")+sRes;}
return sRes;}
function getAmplada(){extentWidth=map.cBounds[2]-map.cBounds[0];return extentWidth}

function getDistanceInMeters(distance){return distance;}


function idec_llegenda(w,h,ll,text){

var inLLe="";
	if(ll==1){ll='cobertes.gif';text='Cobertes_del_sòl_1993'}
	if(ll==2){ll='cultius.gif';text='Cultius_i_aprofitaments_1997_1999'}
	//15 gener
	if(ll==3){ll='nodes.png';text=''}
	if(ll==4){ll='links.png';text=''}
	//28 marzo Tematicos
	if(ll==5){ll='munieps.gif';text='Estudis_Primàris_i_Secundàris(%)'}
	if(ll==6){ll='munieu.gif';text='Estudis_Universitàris(%)'}
	if(ll==7){ll='muniarp.gif';text='Agricultura_Ramaderia_i_Pesca(%)'}
	if(ll==8){ll='muniiee.gif';text='Indústria_i_Energia_Electrica(%)'}
	if(ll==9){ll='munic.gif';text='Construcció(%)'}
	if(ll==10){ll='munico.gif';text='Comerç(%)'}
	if(ll==11){ll='munih.gif';text='Hosteleria(%)'}
	if(ll==12){ll='munitc.gif';text='Transports_i_Comunicacions(%)'}
	if(ll==13){ll='munis.gif';text='Serveis(%)'}
	if(ll==14){ll='muni15.gif';text='De_0_a_15_anys(%)'}
	if(ll==15){ll='muni1530.gif';text='15_a_30_anys(%)'}
	if(ll==16){ll='muni65.gif';text='30_a_65_anys(%)'}
	if(ll==17){ll='muni66.gif';text='Més_de_65_anys(%)'}
	if(ll==18){ll='munipobl.gif';text='Població_1996(Total)'}
	if(ll==19){ll='munipao.gif';text='Població_Activa_Ocupats(%)'}
	if(ll==20){ll='munipnaj.gif';text='Població_No_Activa_Jubilats(%)'}
	if(ll==21){ll='munipnae.gif';text='Població_No_Activa_Estudiant(%)'}
    if(ll==22){ll='protContLluminosa.jpeg';text='Protecció Contaminació Lluminosa'}
    if(ll==23){ll='tdt.png';text='Cobertura TDT'}
	//w=window.open("", "Llegenda", 'scrollbars,width='+w+',height='+h+',left=150,top=150');
	inLLe +="<html><title>Llegenda</title><table border=0><tr><td  align=center><b>"+text+"</b></td></tr><tr>";
		inLLe +="<td align=center><img border=0 src=images/llegenda/"+ll+"></td></tr></table></html>";
	//w.document.close();	
    
    
    winInfo=dhtmlwindow.open("winInfo", "inline", inLLe, "Llegenda", "width="+w+"px,height="+h+"px,left=300px,top=95px,resize=1,scrolling=1");
	
    
}


function idec_llegendaGLG(peticio,imatge){


var id='glg_'+imatge;
var di='divglg_'+imatge;
var ima='<br><img alt="Veure llegenda"  id="'+id+'" onError="idec_retocaGLG(this.id)" src="'+peticio+'" >';
if(document.getElementById(id)){
    
    document.getElementById(di).innerHTML="";
    }else{
    document.getElementById(di).innerHTML=ima;
   // document.getElementById(id).src="images/blank.gif";
    }


}

//++++++++++++++++++++++++
//++++++++++++++++++++++++
//1 Juny

//Funcions per crear menu de cerca
var estatCercaMunCom=0;
function canviaMunCom(cerca){
estatCercaMunCom=cerca;
}
function escriuFinestraCerca() {
	
	document.getElementById('EinesCerca').innerHTML = escriuMenuCerca();
	
	var myAccordion2 = new Rico.Accordion( $('menuCerquesDiv'), {panelHeight:50} );

}

function escriuMenuCerca(){
	//var htmlString = '';
    
    var htmlString=new Array();
    
	htmlString.push('<div id="accordion1" style="width:100%">');
	htmlString.push('<div id="panel">');
	
	//Carrerer
	htmlString.push( '<div id="addcomment2Panel">');
	htmlString.push( '<div id="addcomment2Header" class="accordionTabTitleBar">');
	htmlString.push( gui_Carr);
	htmlString.push( '</div>');
	htmlString.push( '<div id="addcomment2Content" class="accordionTabContentBox">');
	htmlString.push( idec_escriuCerques_Mun('txtcodiMun','divcodiMun',0));
	htmlString.push( idec_escriuCerques_Urbanisme('Urbanisme',0));
	htmlString.push( '</div>');
	htmlString.push( '</div>');
	
	
	htmlString.push('<div id="help2Header"  class="accordionTabTitleBar">');
	htmlString.push(gui_Mun);
	htmlString.push('</div>');
	htmlString.push('<div id="helpContent2" class="accordionTabContentBox">');
	htmlString.push('<table cellspacing="2" cellpadding="2"><tr><td class="td">');	
	htmlString.push('<input class="text" name="rad" type="radio" value="0" Onclick="canviaMunCom(this.value);" checked>'+gui_Mun1+'<input type="radio" name="rad" Onclick="canviaMunCom(this.value);" value="1">'+gui_Com);	
	htmlString.push("</td></tr><tr><td class=\"td\">");
	htmlString.push(gui_InCer+':<br>');
	htmlString.push("<input type=\"text\"  class=\"comboLoca\"  name=\"txtMuniComH\" autocomplete=\"off\"  onkeyup=\"javascript:autocompletar('divMuniCom',this.value,estatCercaMunCom);\" id=\"txtMuniComH\";\"  >");
	htmlString.push("<input type=\"hidden\"  name=\"txtMuniCom\" id=\"txtMuniCom\" ><br>");
	htmlString.push("<div class=\"lista\" id=\"divMuniCom\"></div>");
	htmlString.push("</td></tr><tr><td align=\"right\">");
	htmlString.push("</td></tr></table>");
	htmlString.push('</div>');
	htmlString.push('</div>');
	
	htmlString.push('<div id="addcomment2Panel">');
	htmlString.push('<div id="addcomment2Header" class="accordionTabTitleBar">');
	htmlString.push(gui_Top);
	htmlString.push('</div>');
	htmlString.push('<div id="addcomment2Content" class="accordionTabContentBox">');
	htmlString.push('<table cellspacing="2" cellpadding="2"><tr><td>');
	htmlString.push("<tr><td class=\"td\">");
	//htmlString.push("<input type=\"text\"  class=\"comboLoca\" OnMouseOver=\"this.focus());\" name=\"txtToponims\" id=\"txtToponims\" onkeyDown=\"capturaTecla(event,'txtToponims'));\"  >");
	htmlString.push(gui_InCer+':<br>');
	htmlString.push("<input type=\"text\"  class=\"comboLoca\"  name=\"txtToponimsH\" autocomplete=\"off\"  onkeyup=\"javascript:autocompletar('divToponims',this.value,4);\" id=\"txtToponimsH\";\"  >");
	htmlString.push("<input type=\"hidden\"  name=\"txtToponims\" id=\"txtToponims\" ><br>");
	htmlString.push("<div class=\"lista\" id=\"divToponims\"></div>");
	htmlString.push("</td></tr><tr><td align=\"right\">");
	htmlString.push("<input type=\"button\"  class=\"boto\" value=\"Cercar\"  name=\"botocer\" id=\"botocer\" Onclick=\"cercarDades('txtToponims');\"  >");
	htmlString.push("</td></tr></table>");
	htmlString.push('</div>');
	htmlString.push('</div> ');
	//Metadades
	htmlString.push( '<div id="addcomment2Panel">');
	htmlString.push( '<div id="addcomment2Header" class="accordionTabTitleBar">');
	htmlString.push( gui_Met);
	htmlString.push( '</div>');
	htmlString.push( '<div id="addcomment2Content" class="accordionTabContentBox">');
	htmlString.push('<table width="98%" border="0" cellspacing="0" cellpadding="0" >'); 
    htmlString.push('<tr><td class="td" width="98%" >'+gui_TxLliu+':<br>');
    htmlString.push('<input  type="text"  class="comboLoca" id="txtMetaNom" name="txtMetaNom" size="20" onkeyDown="capturaTecla(event,\'txtMetaNom\');" >');
    htmlString.push('</td></tr>'); 
	htmlString.push('<tr><td class="td" width=\"98%\" >'+gui_Orga+':<br>');
	htmlString.push( '<select class="comboLoca"  name="comboOrg" id="comboOrg">');
	htmlString.push( initComboOrg());
	htmlString.push( '</select></div>');
    htmlString.push('</td></tr>');
    htmlString.push('<tr><td class="td" width=\"98%\" >'+gui_Para+':<br>'); 
    htmlString.push('<input  type=\"text\"  class=\"comboLoca\" id="txtMetaKey" name="txtMetaKey" size="20" onkeyDown="capturaTecla(event,\'txtMetaNom\');">');
    htmlString.push('</td></tr><tr><td align=\"right\"><input class="boto"  onClick="idec_metadades(\'txtMetaNom\',\'gestor\')"  type="button" value="'+gui_Bt+'" name="cerca">');
	htmlString.push("</td></tr>");	
	htmlString.push( "<tr><td  style=\"BORDER-TOP: #aeaeae 1px solid;\" width='98%'><input type='checkbox' id='caixaMD' name='caixaMD'  value='caixa' ><font class=\"text\">"+gui_Fil+"</font></td></tr>");
	htmlString.push( "</table>");
	htmlString.push( '</div></div> ');
	
	//Cadastre carrersr
	htmlString.push( '<div id="addcomment2Panel">');
	htmlString.push( '<div id="addcomment2Header" class="accordionTabTitleBar">');
	htmlString.push( gui_AdrPo);
	htmlString.push( '</div>');
	htmlString.push( '<div id="addcomment2Content" class="accordionTabContentBox">');
	htmlString.push( idec_escriuCerques_Mun('txtcadMun','divcadMun',3));
	htmlString.push( idec_escriuCerques_Cadastre('Urbanisme',0));
	htmlString.push( '</div>');
	htmlString.push( '</div> ');
	htmlString.push( '<div id="disclaimer2Panel">');
	htmlString.push( '<div id="disclaimer2Header" class="accordionTabTitleBar">');
	htmlString.push( gui_RefCat);
	htmlString.push( '</div>');
	htmlString.push( '<div id="disclaimer2Content" class="accordionTabContentBox">');
	htmlString.push( idec_escriuCerques_Mun('txtcadMun1','divcadMun1',3));
	htmlString.push( idec_escriuCerques_Cadastre('Parcela',0));
	htmlString.push( '</div>');
	htmlString.push( '</div>');
	htmlString.push( '</div>');	

return htmlString.join(' ');

}




function Init1(){



}



function idec_escriuCerques_Mun(nomControl,nomDiv,tipusCerca){

 var htmlString=new Array();

htmlString.push('<table width="98%"  border="0" cellspacing="2" cellpadding="0">');
htmlString.push('<tr>'); 
htmlString.push('<td  valign="middle"  class="td" width=\"15%\" >'+gui_Mun1+':</td><td valign="middle" >');
htmlString.push("<input type=\"text\" style=\"width:130px\" class=\"comboLoca\" id=\""+nomControl+"H\"  name=\""+nomControl+"H\" autocomplete=\"off\" onkeyup=\"javascript:autocompletar('"+nomDiv+"',this.value,"+tipusCerca+");\" >");
htmlString.push("<input type=\"hidden\"  name=\""+nomControl+"\" id=\""+nomControl+"\" value=\"null\" ><br>");
htmlString.push("<div class=\"lista\"  id=\""+nomDiv+"\"></div>");   
htmlString.push('</td></tr>');
htmlString.push('</table>');
return htmlString.join(' ');
}


function initComboOrg() {
     htmlString='';
	
       
                        for (var i=0; i < OrganisationArray.length-1; i++) {
                        
                                htmlString += '<option value="'+OrganisationArray[i]+'">'+OrganisationArray[i]+'</option>';
                        }
          return htmlString; 
        }
		
		
		
	
function idec_escriuCerques_Cadastre(tipus,posLeft){

var htmlString=new Array();

	if(tipus=="Parcela"){
htmlString.push('<table width="96%"  border="0" cellspacing="1" cellpadding="1">');
htmlString.push('<tr>'); 
htmlString.push('<td class="td" ><input name="radiobutton" onclick="actiu=\'rc\';document.getElementById(\'rc\').style.display=\'block\';document.getElementById(\'pp\').style.display=\'none\'" type="radio" value="rc" checked>');
htmlString.push(gui_Urb+'</td>');
htmlString.push('<td class="td" ><input type="radio" onclick="actiu=\'pp\';document.getElementById(\'pp\').style.display=\'block\';document.getElementById(\'rc\').style.display=\'none\'" name="radiobutton" value="pp">');
htmlString.push(gui_Rus+'</td>');
htmlString.push('</tr><tr>'); 
htmlString.push('<td colspan="2">'); 
htmlString.push('<div id="rc" class="text"  style="display:block; z-index:1;">');
htmlString.push(gui_RefCat+':<br><input  class="comboLoca"  name="txtRC" size="20" onkeyDown="capturaTeclaCadastre(event,\'getRCCadastre\');" type="text" value="" id="txtRC">');
htmlString.push('<br><font color="#666666" size="-5">'+gui_14+'</font></div>');
htmlString.push('<div id="pp" class="td"  style="display:none; z-index:1; ">');
htmlString.push('Pol: <input name="txtPol"  class="text"  type="text" id="txtPol" value="3" size="5" maxlength="5">');
htmlString.push('Par: <input name="txtPar"  class="text"  type="text" id="txtPar" onkeyDown="capturaTeclaCadastre(event,\'getRCCadastre\');" value="5" size="5">');
htmlString.push('</div>');
htmlString.push('</td></tr>');
htmlString.push('<tr> <td class="td" align="right"  colspan="2"><input class="boto"  onClick="idec_cercaCadastre(\'getRCCadastre\',0)"  type="button" value="'+gui_Bt+'" name="cercaCad"></td></tr>');
htmlString.push('</table>');	
	}else{
	htmlString.push('<table width="98%" border="0" cellspacing="2" cellpadding="0" >');
	if((codiEmail.length < 4)&&(tipusAplicacio==tipus)){
		cadastre.sort(ordenaComboMunicipis);
		htmlString.push('<tr><td colspan="2"> ');
		htmlString.push('<select class="td" style="width:100px" onchange="codiMuniCad=this.value" >');
		codiMuniCad=cadastre[0][0];
		htmlString.push('<option selected  value="'+cadastre[0][0]+'">'+gui_escMun+'</option>');
		for(i=0;i < cadastre.length;i++){
			htmlString.push('<option  value="'+cadastre[i][0]+'">'+cadastre[i][1]+'</option>');
		}
		htmlString.push('</select>');
		htmlString.push('</td></tr> ');
	}
	htmlString.push('<tr><td class="td" width=\"25%\" >'+gui_Tipus+':</td><td>');
	htmlString.push('<select class="td" style="width:65px;" onchange="tipusCarrerCadastre=this.value" id="tipusCarrerCar" name="tipusCarrerCar">');
	htmlString.push('<option value="AG">'+tip_Agregat+'</option><option value="AL">'+tip_Aldea+'</option><option value="AR">'+tip_Area+'</option><option value="AU">'+tip_Autopista+'</option><option value="AV">'+tip_Avinguda+'</option><option value="AY">'+tip_Rierol+'</option><option value="BJ">'+tip_Baixada+'</option><option value="BO">'+tip_Barri+'</option><option value="BR">'+tip_Barranc+'</option><option value="CA">'+tip_Canyissar+'</option>');
htmlString.push('<option value="CG">'+tip_Colegi+'</option><option value="CH">'+tip_Xalet+'</option><option value="CI">'+tip_Cinturo+'</option><option value="CJ">'+tip_Carrero+'</option>');
htmlString.push('<option selected value="CL">'+tip_Carrer+'</option><option value="CM">'+tip_Cami+'</option><option value="CN">'+tip_Colonia+'</option><option value="CO">'+tip_Consell+'</option>');
htmlString.push('<option value="CP">'+tip_Camp+'</option><option value="CR">'+tip_Carretera+'</option><option value="CS">'+tip_Caseriu+'</option><option value="CT">'+tip_Pujada+'</option>');
htmlString.push('<option value="CU">'+tip_Conjunt+'</option><option value="DE">'+tip_Darrera+'</option><option value="DS">'+tip_Disseminats+'</option>');
htmlString.push('<option value="ED">'+tip_Edificis+'</option><option value="EM">'+tip_Extramurs+'</option><option value="EN">'+tip_Entrada+'</option><option value="ER">'+tip_Extraradi+'</option>');
htmlString.push('<option value="ES">'+tip_Escala+'</option><option value="EX">'+tip_Explanada+'</option><option value="FC">'+tip_Ferrocarril+'</option><option value="FN">'+tip_Finca+'</option>');
htmlString.push('<option value="GL">'+tip_Glorieta+'</option><option value="GR">'+tip_Grup+'</option><option value="GV">'+tip_Gran_Via+'</option><option value="HT">'+tip_Hort+'</option>');
htmlString.push('<option value="JR">'+tip_Jardins+'</option><option value="LD">'+tip_Vessant+'</option><option value="LG">'+tip_Lloc+'</option><option value="MC">'+tip_Mercat+'</option>');
htmlString.push('<option value="ML">'+tip_Moll+'</option><option value="MN">'+tip_Municipi+'</option><option value="MS">'+tip_Masia+'</option><option value="MT">'+tip_Muntanya+'</option>');
htmlString.push('<option value="MZ">'+tip_Illa+'</option><option value="PB">'+tip_Poblat+'</option><option value="PD">'+tip_Partida+'</option><option value="PJ">'+tip_Passatge+'</option>');
htmlString.push('<option value="PL">'+tip_Poligon+'</option><option value="PQ">'+tip_Parc+'</option><option value="PR">'+tip_Prolongacio+'</option><option value="PS">'+tip_Passeig+'</option>');
htmlString.push('<option value="PT">'+tip_Pont+'</option><option value="PZ">'+tip_Placa+'</option><option value="QT">'+tip_Quintar+'</option><option value="RB">'+tip_Rambla+'</option>');
htmlString.push('<option value="RC">'+tip_Raco+'</option><option value="RD">'+tip_Ronda+'</option><option value="RM">'+tip_Ramal+'</option><option value="RP">'+tip_Rampa+'</option>');
htmlString.push('<option value="RR">'+tip_Riera+'</option><option value="RU">'+tip_Rua+'</option><option value="SA">'+tip_Sortida+'</option><option value="SD">'+tip_Senda+'</option>');
htmlString.push('<option value="SL">'+tip_Solar+'</option><option value="SN">'+tip_Salo+'</option><option value="SU">'+tip_Pujada+'</option><option value="TN">'+tip_Terrenys+'</option>');
htmlString.push('<option value="TO">'+tip_Torrent+'</option><option value="TR">'+tip_Travessera+'</option><option value="UR">'+tip_Urbanitzacio+'</option><option value="VR">'+tip_Sendera+'</option>');

    htmlString.push('</select>');
    htmlString.push('<img class="boto" onClick="idec_cercaCadastre(\'getCarrersCadastre\',0)" onmouseover="Tip(\''+gui_TipLL+'\')" src="images/cerca.gif"  align="absmiddle"></td></tr><tr>'); 
    htmlString.push('<td class="td" width=\"25%\" >'+gui_Car+':</td><td>');
    htmlString.push('<input class="td" id="nomCarrerCadastre" size="18"  name="nomCarrerCadastre">'); 
	htmlString.push('</td>');
    htmlString.push('</td></tr><tr>'); 
    htmlString.push('<td class="td" width=\"25%\" >'+gui_Num+':</td><td>');
    htmlString.push('<input class="text" id="numCarrerCad2" size="4"  onkeyDown="capturaTeclaCadastre(event,\'getAdrecaCadastre\');" name="numCarrerCad2">');
    htmlString.push('&nbsp;&nbsp;<input class="boto"  onClick="idec_cercaCadastre(\'getAdrecaCadastre\',0)"  type="button" value="'+gui_Bt+'" name="cerca">');
	htmlString.push("</td></tr>");
	htmlString.push( "</table>");
	}
	return htmlString.join(' ');
}
function idec_escriuCerques_Urbanisme(tipus,posLeft){
var htmlString=new Array();
	htmlString.push('<table width="99%" border="0" cellspacing="2" cellpadding="0" >');
	if((codiMun.length < 4)&&(tipusAplicacio==tipus)){
		comarca.sort(ordenaComboMunicipis);
		htmlString.push('<tr><td colspan="2"> ');
		htmlString.push('<select class="text" style="width:100px" onchange="codiMun=this.value" >');
		codiMun=comarca[0][0];
		htmlString.push('<option selected  value="'+comarca[0][0]+'">'+gui_escMun+'</option>');
		for(i=0;i < comarca.length;i++){
			htmlString.push('<option  value="'+comarca[i][0]+'">'+comarca[i][1]+'</option>');
		}
		htmlString.push('</select>');
		htmlString.push('</td></tr> ');
	}
	htmlString.push('<tr><td class="text" width=\"25%\" >'+gui_Tipus+':</td><td class="text" >');
	htmlString.push('<select class="text" style="width:65px;" id="tipusCarrer" name="tipusCarrer">');
		htmlString.push('<option value="c.">Altres...</option>');
	    htmlString.push('<option value="av.">'+tip_Avinguda+'</option>');
	    htmlString.push('<option value="bda.">'+tip_Baixada+'</option>');
	    htmlString.push('<option value="Camí">'+tip_Cami+'</option>');
	    htmlString.push('<option value="c." selected>'+tip_Carrer+'</option>');
	    htmlString.push('<option value="crta.">'+tip_Carretera+'</option>');
	    htmlString.push('<option value="Parc">'+tip_Parc+'</option>');
	    htmlString.push('<option value="pg.">'+tip_Passeig+'</option>');
	    htmlString.push('<option value="pl.">'+tip_Placa+'</option>');
	    htmlString.push('<option value="plta.">'+tip_Placeta+'</option>');
	    htmlString.push('<option value="ptge.">'+tip_Passatge+'</option>');
	    htmlString.push('<option value="rbla.">'+tip_Rambla+'</option>');
	    htmlString.push('<option value="Ronda">'+tip_Ronda+'</option>');
	    htmlString.push('<option value="trv.">'+tip_Travessera+'</option>');
	    htmlString.push('<option value="Via">'+tip_Via+'</option>');
	    htmlString.push('<option value="Vial">'+tip_Vial+'</option>');
    htmlString.push('</select>');
    htmlString.push('<input type="checkbox" id="cru" name="cru" onClick="escriuInterseccio(this.checked,1)">'+gui_Cru);
    htmlString.push('</td></tr>'); 
    htmlString.push('<tr><td class="text" >'+gui_Car+':</td><td>');
    htmlString.push('<input class="text" id="nomCarrer" size="18" onkeyDown="idec_capturaTecla(event);" name="nomCarrer">');
    
    htmlString.push('</td></tr><tr>'); 
    htmlString.push('<td class="text" width=\"25%\" ><div id="1car">'+gui_Num+':</div></td><td>');
    //htmlString.push('<br>'; 
    htmlString.push('<input class="text" id="numCarrer" size="7" onkeyDown="idec_capturaTecla(event);" name="numCarrer">');
    htmlString.push('&nbsp;&nbsp;<input class="boto"  onClick="idec_cercaCarrer()"  type="button" value="'+gui_Bt+'" name="cerca">');
	htmlString.push("</td></tr><tr><td  colspan=\"2\" width='80%'><hr style=\"width:80%\"><input class=\"text\" type='checkbox' id='carrrer' name='carrrer'  onclick=\"idec_estatCarrrer(this.checked)\"  value='carrer'><input type='text'  id='txtcarrers' class=\"td\" size='25' readOnly='true' style='border-style: none;width=200px '  value='"+gui_DeCaCar+"'></td></tr>");
	htmlString.push( "</table>");
	return htmlString.join(' ');
}

function parseCarrerCadastre(tipus,carrer){
tipusCarrerCadastre=tipus;
nomCarrerCadastre=carrer;	
e('nomCarrerCadastre').value=nomCarrerCadastre;	
var master=e('tipusCarrerCar');
for (i=0; i<master.options.length; i++){
if(master.options[i].value==tipus){master.options[i].selected=true;}
}

}

function ordenaComboMunicipis(a,b){
	return (a[1].toUpperCase() < b[1].toUpperCase()) ? -1 : 1;
}

//tiles 14 sep 2007
var NUMTILE = 1;
var numeroTalls=4;
image = null;
var BBOXT = new Array();
var srvTiles = new Array();

//NO fa tiles
srvTiles[0] = "limadmin";
srvTiles[1] = "delta.icc";
srvTiles[2] = "onearth.jpl.nasa.gov";
//srvTiles[0] = "shagrat.icc.es";
//srvTiles[1] = "galileo.icc.es";
srvTiles[3] = "ovc.catastro.meh.es";
srvTiles[4] = "geodata";
srvTiles[5] = "mapserv";


function crearMapa(mapa){
//2 dic 2007

var nombreTitW = 2;
var nombreTitH = 2;

	nombreTitW = calculaNumTiles(mapa.mapWidthPX);
	
	nombreTitH = calculaNumTiles(mapa.mapHeightPX);
	var container = mapa.gid + "_container";
	var h = document.getElementById(container);
	if (h.hasChildNodes()){
		for (var i = 0; i < h.childNodes.length; i++){
			var divT = h.childNodes[i];
			var idDiv = divT.id;
			var nombreDiv = "div_"+mapa.prefix;
			if (idDiv != null){
				if (idDiv.indexOf(nombreDiv) != -1){
					var pos = idDiv.lastIndexOf("_");
					var ind = idDiv.substring(pos+1);
					
					var surl = formaUrl(mapa.layers[parseInt(ind)],ind,mapa);
					 
					if (surl.indexOf(".gif") == -1){
                    
						//crearGrid(idDiv, surl, mapa.cBounds, 4);
						
						var esta = 0;
						if (mapa.layers[parseInt(ind)].tiles == false || mapa.layers[parseInt(ind)].tiles == "false"){
							esta = 1;
						}
						for (var s = 0; s < srvTiles.length; s++){
							var srvTil = srvTiles[s];
                           
							if (surl.indexOf(srvTil) != -1){
                            
								esta = 1;
								break;
							}
						}
						if (esta == 1){
							crearGrid(idDiv, surl, mapa.cBounds, 1, 1);
						}
						else{
						crearGrid(idDiv, surl, mapa.cBounds, nombreTitW, nombreTitH);
							//crearGrid(idDiv, surl, mapa.cBounds, 1, 1);
						}
						
					}
				}
			}
            
		}
	}
    
    
}

function zoomMapa(mapa, activa){
	if (activa != 1){
		limpiarMapa(mapa);
		crearMapa(mapa);
	}
	else{
		for(i = 0; i < mapa.servidores.length; i++){
			var ncapas = 0;
			var activo = false; 
			var posSrv = mapa.servidores[i][0];
			if (mapa.servidores[i][3] == true || mapa.servidores[i][3]=='true'){
				activo = true;
			}
			for(j = i+1; j < mapa.servidores.length; j++){
				var posSrv1 = mapa.servidores[j][0];
				if (posSrv == posSrv1){
					ncapas++;
					if (mapa.servidores[j][3] == true || mapa.servidores[j][3]=='true'){
						activo = true;
					}
				}else{
					break;
				}
			}
			if (activo){
				var posCapa = mapa.servidores[i][0];
                
				var nombreDiv = "div_"+mapa.prefix+posCapa;
				var capa = document.getElementById(nombreDiv);
				//limpiarCapa(capa);
				var ind = posCapa;
				var idDiv = nombreDiv;
				var nombreTitW = calculaNumTiles(mapa.mapWidthPX);
				var nombreTitH = calculaNumTiles(mapa.mapHeightPX);
				var surl = formaUrl(mapa.layers[parseInt(ind)],ind,mapa);
				if (capa.hasChildNodes()){
					var divT = capa.childNodes[0];
					if (divT.style.backgroundImage.indexOf(surl) != -1){
					
					}else{
						limpiarCapa(capa);
						if (surl.indexOf(".gif") == -1){
							//crearGrid(idDiv, surl, mapa.cBounds, 4);
							var esta = 0;
							if (mapa.layers[parseInt(ind)].tiles == false || mapa.layers[parseInt(ind)].tiles == "false"){
								esta = 1;
							}
							for (var s = 0; s < srvTiles.length; s++){
                           
								var srvTil = srvTiles[s];
								if (surl.indexOf(srvTil) != -1){
									esta = 1;
									break;
								}
							}
							if (editor){
								crearGrid(idDiv, surl, mapa.cBounds, 1, 1);
							}else{
                            
								if (esta == 1){
                               
									crearGrid(idDiv, surl, mapa.cBounds, 1, 1);
									//crearGrid(idDiv, surl, mapa.cBounds, nombreTitW, nombreTitH);
								}
								else{
                               
									crearGrid(idDiv, surl, mapa.cBounds, nombreTitW, nombreTitH);
									//crearGrid(idDiv, surl, mapa.cBounds, 1, 1);
								}
							}
						}
					}
				}else{ 
					if (surl.indexOf(".gif") == -1){
						//crearGrid(idDiv, surl, mapa.cBounds, 4);
						var esta = 0;
						if (mapa.layers[parseInt(ind)].tiles == false || mapa.layers[parseInt(ind)].tiles == "false"){
							esta = 1;
						}
						for (var s = 0; s < srvTiles.length; s++){
							var srvTil = srvTiles[s];
							if (surl.indexOf(srvTil) != -1){
								esta = 1;
								break;
							}
						}
						if (editor){
							crearGrid(idDiv, surl, mapa.cBounds, 1, 1);
						}else{
							if (esta == 1){
								crearGrid(idDiv, surl, mapa.cBounds, 1, 1);
								//crearGrid(idDiv, surl, mapa.cBounds, nombreTitW, nombreTitH);
							}
							else{
								crearGrid(idDiv, surl, mapa.cBounds, nombreTitW, nombreTitH);
								//crearGrid(idDiv, surl, mapa.cBounds, 1, 1);
							}
						}
					}
				}
			}else{
				var posCapa = mapa.servidores[i][0];
				var nombreDiv = "div_"+mapa.prefix+posCapa;
				var capa = document.getElementById(nombreDiv);
				limpiarCapa(capa);
			}
			i = i + ncapas;		
			//alert(posSrv + " CAPAS: " + ncapas);
		}
	}
}

function limpiarMapa(mapa){
	var container = mapa.gid + "_container";
	var h = document.getElementById(container);
	if (h.hasChildNodes()){
		//alert(h.childNodes.length);
		for (var i = 0; i < h.childNodes.length; i++){
			var divT = h.childNodes[i];
			//alert(divT.innerHTML);
			var idDiv = divT.id;
			if (idDiv != null){
				var nombreDiv = "div_"+mapa.prefix;
				//alert(idDiv);
				if (idDiv.indexOf(nombreDiv) != -1){
					limpiarCapa(divT);
				}
			}
		}
	}
}

function limpiarCapa(capa){
	if (capa.hasChildNodes()){
		var id = capa.id;
  		id = id.substring(id.lastIndexOf("_")+1);
  		var pos = parseInt(id);
  		var img_div = "load_"+pos;
  		var err_div = "error_"+pos;
  		//alert(document.getElementsByName(img_div).length);
  		if (document.getElementsByName(err_div).length > 0){
  			var cap_lay = document.getElementsByName(err_div);
  			for (w = 0; w < cap_lay.length; w++){
  				var capa_lay = cap_lay[w];
  				capa_lay.style.visibility = "hidden";
                
  			}
  		}
  		if (document.getElementsByName(img_div).length > 0){
  			var cap_lay = document.getElementsByName(img_div);
  			//alert(cap_lay.length);
  			for (w = 0; w < cap_lay.length; w++){
  				var capa_lay = cap_lay[w];
  				var id_Cap = capa_lay.id;
  				var id_ck = id_Cap.substring(5);
  				if (document.getElementById(id_ck).checked){
  					capa_lay.style.visibility = "visible";
                     
  				}
  			}
  			//document.getElementsByName(img_div).style.visibility = "visible";
		}
  		//if (document.getElementById(img_div)){
		//	document.getElementById(img_div).style.visibility = "visible";
		//}
		while(capa.hasChildNodes()){
			capa.removeChild(capa.firstChild);
		}
	}
}

function crearGrid(div, url, bbox, tilesNumW, tilesNumH){
	//var im = document.createElement("img");
	//alert(div);
	var h = document.getElementById(div);
  	//while (h.firstChild)
    //h.removeChild(h.firstChild);
  	//h.appendChild(im);
	agregarTiles(h, url, bbox, tilesNumW, tilesNumH);
}

function agregarTiles(div, url, bbox, tilesNumW, tilesNumH){
	var NUMTILEW = parseInt(tilesNumW);
	var NUMTILEH = parseInt(tilesNumH);
	var NUMTILE = NUMTILEW;
	var width;
	var height;
	var tileWidth;
	var tileHeight;
	width = parseInt(div.style.width); // or naturalWidth, or computed width...
	height = parseInt(div.style.height);
	
	if (NUMTILEW == 1){
		tileWidth = width;
		tileHeight = height;
		
		
		if (width > height){
			tileWidth = width;
			tileHeight = width;
		}else{
			tileWidth = height;
			tileHeight = height;
		}
		
		
	}else{
		tileWidth = 256;
		tileHeight = 256;
	}
		
	var urlT = url+"WIDTH="+tileWidth+"&HEIGHT="+tileHeight+"&BBOX=";
	//alert(urlT);
	var tiles = new Array;
	var grid = new Array;
	for (var g=0; g<NUMTILEW; g++){
		tiles[g] = [];
		grid[g] = [];
	}
	
	var theEmptyT, emptyp, emptyq;
	for (var i=0; i<NUMTILEW; ++i)
	 for (var j=0; j<NUMTILEH; ++j)
	 {
	  var t = document.createElement("div");
	  var x = i * tileWidth;
	  var y = j * tileHeight;
	  t.style.position = "absolute";
	  t.style.width = tileWidth + "px";
	  t.style.height = tileHeight + "px";
	if (NUMTILEW == 1){
		//14 feb 08
		
		var dx = bbox[2] - bbox[0];
		var dy = bbox[3] - bbox[1];
		var pixelsW = dx / width;
		var intx = pixelsW * tileWidth;
		var inty = intx;
		//alert(intx + "  " + inty);
		BBOXT[0] = bbox[0] + (intx*i);
		BBOXT[1] = bbox[3] - (inty*(j+1));
		BBOXT[2] = bbox[0] + (intx*(i+1));
		BBOXT[3] = bbox[3] - (inty*j);
		
	}else{
		var dx = bbox[2] - bbox[0];
		var dy = bbox[3] - bbox[1];
		//3 dic 2007
		//var intx = dx/NUMTILE;
		//var inty = dy/NUMTILE;
		var pixelsW = dx / width;
		var intx = pixelsW * tileWidth;
		var inty = intx;
		//alert(intx + "  " + inty);
		BBOXT[0] = bbox[0] + (intx*i);
		BBOXT[1] = bbox[3] - (inty*(j+1));
		BBOXT[2] = bbox[0] + (intx*(i+1));
		BBOXT[3] = bbox[3] - (inty*j);
	}	
			
	//30 Octubre 2007 reprojecció
	if(urlT.indexOf(mainEPSG)==-1){
		pos1=urlT.indexOf("EPSG:");
		srt1=urlT.substring(pos1,urlT.length);
		pos2=srt1.indexOf("&");
		srt2=srt1.substring(0,pos2);
    if(srt2.indexOf("4326") != -1 ||	srt2.indexOf("4230") != -1 || srt2.indexOf("4258") != -1){	
	       
        
    x = parseFloat (BBOXT[0]);
    y = parseFloat (BBOXT[1]);
    zone = parseFloat (31);
	southhemi = false;
	UTMXYToLatLon (x, y, zone, southhemi, latlon);
    var xmin = RadToDeg (latlon[1]);
    var ymin = RadToDeg (latlon[0]);
	coordTemp[0]=redondear(xmin,4);
	coordTemp[1]=redondear(ymin,4);
    
	x = parseFloat (BBOXT[2]);
    y = parseFloat (BBOXT[3]);
    zone = parseFloat (31);
    southhemi = false;
	UTMXYToLatLon (x, y, zone, southhemi, latlon);
    var xmax = RadToDeg (latlon[1]);
    var ymax = RadToDeg (latlon[0]);
	coordTemp[2]=redondear(xmax,4);
	coordTemp[3]=redondear(ymax,4);

        
   }else{
        var req="/idecwebservices/ideunivers/TransCoordenades.jsp?metode=getTranformEPSGBBOX&inEpsg="+mainEPSG+"&outEpsg="+srt2+"&coordX0="+BBOXT[0]+"&coordY0="+BBOXT[1]+"&coordX1="+BBOXT[2]+"&coordY1="+BBOXT[3]+"&";
		
        ajaxCoord(req);
       pausecomp(1000);
        //ajaxCoord(req);
      } 
		BBOXT[0] = coordTemp[0];
		BBOXT[1] = coordTemp[1];
		BBOXT[2] = coordTemp[2];
		BBOXT[3] = coordTemp[3];
    
  
	}
	
	/**********************************************/
	/**********************************************/
	/**********************************************/
	/**********************************************/
	/**********************************************/
		
	var urlTT = urlT + BBOXT;
	
	if ((i==(NUMTILEW-1)) && (j==(NUMTILEH-1))){
		var img = document.createElement("img");
		img.src = urlTT;
        
         var id = div.id;
			id = id.substring(id.lastIndexOf("_")+1);
			var pos = parseInt(id);
         map.layers[pos].timeI=new Date().getTime();
		img.width = 1;
		img.onerror = function (evt) {
			var id = div.id;
			id = id.substring(id.lastIndexOf("_")+1);
			var pos = parseInt(id);
			var img_div = "error_"+pos;
			var cap_lay = document.getElementsByName(img_div);
             map.layers[pos].timeF=0;
			for (w = 0; w < cap_lay.length; w++){
				var capa_lay = cap_lay[w];
				var id_Cap = capa_lay.id;
				var id_ck = id_Cap.substring(6);
				if (document.getElementById(id_ck).checked){
					capa_lay.style.visibility = "visible";
				}
			}
            
			img.src = "images/blank.gif";
		}
		img.onload = function (evt) {
			img.width = tileWidth;
			var id = div.id;
			id = id.substring(id.lastIndexOf("_")+1);
			var pos = parseInt(id);
			var img_div = "load_"+pos;
			var cap_lay = document.getElementsByName(img_div);
             map.layers[pos].timeF=new Date().getTime();
          
			for (w = 0; w < cap_lay.length; w++){
				var capa_lay = cap_lay[w];
				capa_lay.style.visibility = "hidden";
               
			}
		}
		t.appendChild(img);
	}else{
		t.style.backgroundImage = "url(" + urlTT + ")";
	  	t.style.backgroundAttachment = "scroll";
	  	t.style.backgroundRepeat = "no-repeat";
	}
	
	/**********************************************/
	/**********************************************/
	/**********************************************/
	/**********************************************/
	/**********************************************/
	  
	  /*Antes*/
	  //t.style.backgroundImage = "url(" + urlTT + ")";
	  //t.style.backgroundAttachment = "scroll";
	  //t.style.backgroundRepeat = "no-repeat";
	  /*fin antes*/
	  
	  //t.style.backgroundPosition = "-" + x + "px -" + y + "px";
	  // setting using shorthand works in ie but not in moz:
	  // t.style.background = "url(" + im.src + ") scroll -" + x + " -" + y + " no-repeat";
	  //t.className = "tile";
	  
	  // i,j is original position. used to determine when you've won.
	  t.i = i;
	  t.j = j;
	  // p,q is current position. initially set by repositionAll();
	  grid[i][j] = t;
	  div.appendChild(t);
	 } // huge for loop to create tiles

     
     
	function gradual(ob, prop, start, fin)
	{
		var n = NUMTILE;
		var step = (fin - start) / n;
		ob[prop] = start;
		for (var i=1; i<=n; ++i)
			(function(){
				var I = i;
				setTimeout(function() { ob[prop] = (start + step*I) + "px"; }, 30*i)
			})()
	}

	function repositionAll()
	{
	  var correct = 0, i, j;
	  for (i=0; i<NUMTILEW; ++i)
	   for (j=0; j<NUMTILEH; ++j)
	   {
	     t = grid[i][j];
	     if (t.p != i)
	     {
	       if (t.p != null && !t.isEmpty)
	         gradual(t.style, "left", tileWidth * t.p, tileWidth * i)
	       else
	         t.style.left = tileWidth * i + "px";
	       t.p = i;
	     }
	     if (t.q != j)
	     {
	       if (t.q != null && !t.isEmpty)
	         gradual(t.style, "top", tileHeight * t.q, tileHeight * j)
	       else  
	         t.style.top = tileHeight * j + "px";
	       t.q = j;
	     }
	     if (t.isEmpty)
	     {
	       emptyp = i;
	       emptyq = j;
	     }
	     if (t.i == i && t.j == j)
	       ++correct;
	   }
	   //game.style.borderColor = (correct == (NUMTILE*NUMTILE)) ? "lightgreen" : "black";
	}
	repositionAll();
	//var par = div.parentNode;
	//par.insertBefore(game, div);
	//par.removeChild(div);
}

function formaUrl(aLayer,k, mapa) {
	//alert(k);
  var sURL = aLayer.url;
  var llarg=sURL.length;
  var ultim=sURL.substring(llarg-1,llarg);
  if(ultim != "?"){
  	if(ultim != "&"){
  		sURL=sURL+"&";
  	}
  }
  var nom = "";    
  for (var i=0; i<mapa.servidores.length; i++) {
	if (mapa.servidores[i][0] == k) {
		if (mapa.servidores[i][3] == true){
	  		if (nom == ""){
		  		nom = mapa.servidores[i][1];
		  	}
		  	else{
		  		nom = nom + "," + mapa.servidores[i][1];
		  	}
	  	}	
	}
  }
  
  if (nom != "") {	
  
  	//if(sURL.indexOf('?')!=-1){sURL += "REQUEST=GetMap";}else{sURL += "?REQUEST=GetMap";}
  		
  		if(sURL.indexOf('com.esri')!=-1){sURL=sURL.replace('esrimap','Esrimap');sURL += "&REASPECT=false&";}
  
	sURL += "REQUEST=GetMap";
	sURL += "&SERVICE=WMS";
	sURL += "&SRS=" + aLayer.epsg;
	sURL += "&VERSION=" + aLayer.version;
	sURL += "&STYLES=";
	if (aLayer.transparent == true){
		sURL += "&TRANSPARENT=TRUE";
	}
	else{
		sURL += "&TRANSPARENT=FALSE";
	}
	nom=nom.replace(/ /g,"%20");
	sURL += "&LAYERS=" + nom;
	
	//14 nov estaba comentado pero no se ve el del ING
	if (sURL.indexOf("shagrat.icc.es") != -1){
		sURL += ",&BGCOLOR=0xFFFFFF";
	}
	else{
		sURL += "&BGCOLOR=0xFFFFFF";
	}
   sURL += "&FORMAT=" + aLayer.format;
   sURL += "&";
   
   return sURL;
  }
  else { 
	sURL = mapa.baseDir + "blanco.gif";
	
    
    return sURL;
    
  }
}

//Funcions de zoom imatge i ratolí
var imgGlob="";
function canviaSize(){
 for (var i=0; i < map.layers.length; i++) {
	    
	    if (document.all) {
	      imgGlob = document.images[map.prefix+i];
	      
	    }
	    else {
	      imgGlob = ogcmap_findImage(map.prefix+i,document);
	    }
	    if(imgGlob.src.indexOf("blank.gif")==-1){
  changer();
  }
 }
 }
function handle(delta) {


        if (delta < 0){	
        
        	
		 map.zoomOut(position[0],position[1]);
        }else{
        
        //canviaSize();
       
		map.zoom(position[0],position[1]);
		}
}
/** This is high-level function.
 * It must react to delta being more/less than zero.
 */

/** Event handler for mouse wheel event.
 */
function wheel(event){

        var delta = 0;
        if (!event) /* For IE. */
                event = window.event;
        if (event.wheelDelta) { /* IE/Opera. */
                delta = event.wheelDelta/120;
                /** In Opera 9, delta differs in sign as compared to IE.
                 */
                if (window.opera)
                        delta = -delta;
        } else if (event.detail) { /** Mozilla case. */
                /** In Mozilla, sign of delta is different than in IE.
                 * Also, delta is multiple of 3.
                 */
                delta = -event.detail/3;
        }
        /** If delta is nonzero, handle it.
         * Basically, delta is now positive if wheel was scrolled up,
         * and negative, if wheel was scrolled down.
         */
        if (delta)
                handle(delta);
        /** Prevent default actions caused by mouse wheel.
         * That might be ugly, but we handle scrolls somehow
         * anyway, so don't bother here..
         */
        if (event.preventDefault)
                event.preventDefault();
	event.returnValue = false;
}

/** Initialization code. 
 * If you use your own event management code, change it as required.
 */
if (window.addEventListener)
        /** DOMMouseScroll is for mozilla. */
        window.addEventListener('DOMMouseScroll', wheel, false);
/** IE/Opera. */
window.onmousewheel = document.onmousewheel = wheel;

//obtencio de GML

function calculaAmpladaMapa(factor){
var ampla=(map.cBounds[2]-map.cBounds[0]);

if(ampla <= factor){
	return true;
	}else{
	return false;
	} 
}


//2 dic 2007
function calculaNumTiles(ancho){
	var numT = 0;
	ancho = parseInt(ancho);
	var num = ancho / 256;
	numT = Math.ceil(num);
	return numT;
}

function activaNoOGC(obj){



	if (obj.checked){
		var latlon = new Array(2);
		var latlonMax= new Array(2);
		UTMXYToLatLon (map.cBounds[0], map.cBounds[1], 31, false, latlon);
		var xmin = RadToDeg (latlon[1]);
		var ymin = RadToDeg (latlon[0]);
		UTMXYToLatLon (map.cBounds[2], map.cBounds[3], 31, false, latlonMax);    
		var xmax = RadToDeg (latlonMax[1]);
		var ymax = RadToDeg (latlonMax[0]);
		
		
		
		document.getElementById('OLdiv').style.width='200px';
		
		if(document.all){
		document.getElementById('OLdiv').style.top='150px';
		}else{
		document.getElementById('OLdiv').style.top='150px';
		}
		document.getElementById('OLdiv').style.left='10px';
		document.getElementById('OLdiv').style.color='#000000';
		//document.getElementById('OLdiv').style.zIndex='10000';
		
		document.getElementById('OLdiv').style.fontFamily='Arial, Helvetica, sans-serif'; 
		document.getElementById('OLdiv').style.fontSize='7pt';
		var lonLat = lonLatToMercator(new OpenLayers.LonLat(xmin, ymax));
		var lonLat1 = lonLatToMercator(new OpenLayers.LonLat(xmax, ymin));         
        map1.zoomToExtent(new OpenLayers.Bounds(lonLat.lon,lonLat.lat,lonLat1.lon,lonLat1.lat));
		//map1.zoomToExtent(new OpenLayers.Bounds(xmin,ymin,xmax,ymax));
		document.getElementById('OLdiv').style.visibility = "visible";
		document.getElementById('OLdiv').style.display = "block";
		document.getElementById('mapOpen').style.display = "block";
	}else{
		document.getElementById('OLdiv').style.visibility = "hidden";
		document.getElementById('OLdiv').style.display = "none";
		document.getElementById('mapOpen').style.display = "none";
	}
}

function pausecomp(millis){
	var date = new Date();
	var curDate = null;
	do { curDate = new Date(); } 
	while(curDate-date < millis);
}

function onInputClick(e){
	alert(this.inputElem);
	Event.stop(e);
}


var winMonitoring;
var psM=0;

function showMonitoring(){

psM=psM+1
if(psM==1){
monitoringServers();
winMonitoring=dhtmlwindow.open("winMonitoring", "div", 'monitoring', "Monitoring", "width=400px,height=400px,left=340px,top=95px,resize=1,scrolling=1");
}else{

re();
winMonitoring.show();

//winMonitoring.load("div", 'monitoring', "Monitoring");

}	 
}
function re(){
monitoringServers();
var it=document.getElementById('monitoring').innerHTML;
winMonitoring.load("inline", it, "Monitoring.");
}

function monitoringServers(){

document.getElementById('monitoring').innerHTML="";

var a=new Array();
a.push('<table class="text" width="100%" border="0" cellspacing="1" cellpadding="3">');
a.push('<tr> <td colspan="3"> <div align="right"> </div></td></tr>');
a.push('<tr> <td width="60%"><b>'+addLayer_server0+'</b></td><td colspan="2">'+avisEst+'</td></tr>');
 var rs="";   
for (i=0;i < map.layers.length;i++){
		
				var visib = map.serVisible(i);
				if (visib){
                    if(map.layers[i].timeF==0){//error server
                   
                    rs='<font color="#FF0000"><strong>'+xmd_01+'</strong></font>';
                    }else{
                    var time=(map.layers[i].timeF - map.layers[i].timeI);
                    time=time/1000;
                    
                    if(time <=3){rs='<font color="#009900"><strong>'+time+'</strong></font>';}
                    if(time > 3 && time <=10){rs='<font color="#FF9900"><strong>'+time+'</strong></font>';}
                    if(time >10){rs='<font color="#FF0000"><strong>'+time+'</strong></font>';}
                    if(time < 0){rs='<font color="#FF0000"><strong>'+xmd_02+'</strong></font>';}
                   // console.info(map.layers[i].srvname+";"+time);
                   
                    }
                    
                     a.push('<tr bgcolor="#EbEbEb"><td>'+map.layers[i].srvname+'</td><td colspan="2">'+rs+'</td></tr>');
                
                }
                }
                
    a.push('<tr align="center"><td colspan="3"><hr></td></tr>'); 
    a.push('<tr align="left">');  
    a.push('<td colspan="3">'+xmd_03+'<br> <strong><font color="#009900">0-3 '+xmd_04+'</font></strong><br>');  
    a.push('<strong><font color="#FF9900">3-10 '+xmd_04+'</font></strong><br>');  
    a.push('<font color="#FF0000"><strong>>10 '+xmd_04+'</strong></font></td>'); 
    a.push('</tr>'); 
    a.push('<tr align="center"> <td colspan="3"> <input type="button" onClick="re()" class="boto" name="Submit" value="'+xmd_05+'"> </td></tr>'); 
    a.push('</table>'); 






document.getElementById('monitoring').innerHTML=a.join(' ');


}




function ensenyaCredits(language){winCredit=dhtmlwindow.open("winCredit","iframe","credits_"+language+".htm","Crèdits","width=400px,height=250px,left=350px,top=95px,resize=1,scrolling=1");}

function ensenyaVideos(language){winVideo=dhtmlwindow.open("winVideo","iframe","videos.jsp?idioma="+language,"Videos","width=600px,height=600px,left=350px,top=50px,resize=1,scrolling=1");}
function ensenyaAvis(){var cc='<div id="Layer1" class="text" style="left:5px;top:5px;font-family: Arial, Helvetica, sans-serif; font-size: 9px; font-style: normal; position:absolute; width:240px; height:240px; z-index:1; overflow:auto;">'+'<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'+'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Av&iacute;s legal</p><p>Els visualitzadors presenten informaci&oacute; que prov&eacute; de diferents '+'fonts (servidors de mapes).<br>En l&#8217;apartat de la llegenda de les capes dels visualitzadors hi ha un '+'vincle als organismes prove&iuml;dors de la informaci&oacute;, els quals són '+'responsables de la mateixa.<br>Per veure informaci&oacute; sobre les caracter&iacute;stiques (qualitat, creaci&oacute;, '+'revisi&oacute;, etc..) de cada capa, cal fer click sobre la icona que apareix '+'al costat de cada capa.</p><p>L&#8217;&uacute;s d&#8217;aquesta informaci&oacute; est&agrave; subjecte a la Llei de la Propietat Intel&#8226;lectual i normativa af&iacute;<br></p>'+'<p><span Onclick="tancaAvis()" style="font-size: 9px;font-style: normal;cursor:pointer;cursor:hand;text-decoration: underline;" class="text">Tancar</span></p></div>';var cc1='<div id="Layer1" class="text" style="left:5px;top:5px;font-family: Arial, Helvetica, sans-serif; font-size: 9px; font-style: normal; position:absolute; width:240px; height:240px; z-index:1; overflow:auto;">   <table width="100%" border="0" cellspacing="2" cellpadding="2"><tr><td class="menu" height="30" colspan="2">Temes</td></tr><tr><td class="text" width="66%">Parcelari</td>'+'<td class="text" width="34%"><input type="checkbox" name="checkbox" onClick="activaCapesTemes(this.value,this.checked)" value="Parcelari"></td></tr><tr><td class="text">Planejament</td><td class="text"><input type="checkbox" name="checkbox2" onClick="activaCapesTemes(this.value,this.checked)" value="Planejament"></td></tr><tr><td class="text">Base</td><td>'+'<input type="checkbox" name="checkbox3" onClick="activaCapesTemes(this.value,this.checked)" value="Base"></td></tr><tr><td class="text">Serveis</td><td><input type="checkbox" name="checkbox4" onClick="activaCapesTemes(this.value,this.checked)" value="Serveis"></td></tr><tr> <td colspan="2"><hr></td></tr><tr align="right"><td colspan="2">'+'<input type="button" class="boto" name="Submit" Onclick="tancaAvis()" value="Tancar"></td></tr></table></div>';document.getElementById('posTemes').style.visibility='visible';document.getElementById('posTemes').style.width='250px';document.getElementById('posTemes').style.height='250px';}
function tancaAvis(){document.getElementById('posTemes').style.visibility='hidden';document.getElementById('posTemes').style.width='0px';document.getElementById('posTemes').style.height='0px';}
function tancaDivL(){}