var objetusOcupado=0;
var objetusRuta;
var poiElements;
var labelAbierto=0;
var cambiado=0;
var encuadres=0;

var flagCancelarRuta = 0;

//----------------------------------------------------------------------------------------------
//----   VARS GLOBALES PARA EL PHP DE IMPRESION DE RUTA  PLANO (IRP)---------
//----------------------------------------------------------------------------------------------
var linea_IRP = '';
//seleccionaParadas(240); 

var puntoAX_IRP = '';
var puntoAY_IRP = '';
var puntoBX_IRP = '';
var puntoBY_IRP = '';
var textoA_IRP = '';
var textoB_IRP = '';
//ponerPuntosParaTramoDeRuta(726221.718, 4373220.888, 726350.823726925, 4373037.1770002, '(3)', '(4)'); 

var minx_IRP = '';
var miny_IRP = '';
var maxx_IRP = '';
var maxy_IRP = '';
var funcion_IRP = '';
//generaOpcionesMapa(726136, 4373009, 726436, 4373248, 'map')

function cargarParametrosImprimirRuta(){
	seleccionaParadas(linea_IRP);
	ponerPuntosParaTramoDeRuta(puntoAX_IRP, puntoAY_IRP, puntoBX_IRP, puntoBY_IRP, textoA_IRP, textoB_IRP);
}

//----------------------------------------------------------------------------------------------------------

function centerMapS(origen) {

    var data="?sec=center";
    
    var x=document.getElementById("puntitoX").value;
    var y=document.getElementById("puntitoY").value;

	//hidden para validar si se muestra el puntito central que parpadea
	document.getElementById("activarMarco").value=1;

    data=data+"&minx="+720770;
    data=data+"&miny="+4366870;
    data=data+"&maxx="+730670;
    data=data+"&maxy="+4380700;
    data=data+"&height="+document.getElementById("alto").value;
    data=data+"&width="+document.getElementById("ancho").value;
    data=data+"&rminx="+x;
    data=data+"&rminy="+y;

    data+="&idUsuario="+$('idUsuario').value;
	data+="&fecha="+$('fechaOA').value;

    if (origen==1){
		
		var radio= _RADIO_;
		if(idTercioActivo=='pyr_untercio') radio= _RADIO_UNTERCIO_;
		else if(idTercioActivo=='pyr_dostercios') radio= _RADIO_DOSTERCIOS_;
		else if(idTercioActivo=='pyr_trestercios') radio= _RADIO_TRESTERCIOS_;


        data=data+"&rmaxx="+radio;
    }
    if (origen==0){
        var radio=document.getElementById("radius_TXT").value;

			if(radio>_RADIO_MAXIMO_){ 
				radio= _RADIO_MAXIMO_;
				$('radius_TXT').value= _RADIO_MAXIMO_;
			}
			if(radio<_RADIO_MINIMO_){
				radio= _RADIO_MINIMO_;
				$('radius_TXT').value= _RADIO_MINIMO_;
			}
			if(isNaN(radio) || radio==''){
				radio= _RADIO_;
				$('radius_TXT').value= _RADIO_;
			}

		/*
			if(idTercioActivo=='pyr_untercio') radio= 140;
			else if(idTercioActivo=='pyr_dostercios') radio= 180;
			else if(idTercioActivo=='pyr_trestercios') radio= 300;
		*/
		
        data=data+"&rmaxx="+radio;
    }
 
    data=data+"&layers=";
    var filter_options="&filter=";
    var leyenda_checks = getElementsByClass("checkleyendalineas");
    if (leyenda_checks!=null){
        for (i=0; i<leyenda_checks.length; i++){
            if (leyenda_checks[i].checked){
                filter_options=filter_options+leyenda_checks[i].name+"|";
            }
        }
    }
    data=data+filter_options;

    
    var filter2_options="&filter2=";
    leyenda_checks = getElementsByClass("checkleyendapuntos");
    if (leyenda_checks!=null){
        for (i=0; i<leyenda_checks.length; i++){
            if (leyenda_checks[i].checked){
                filter2_options=filter2_options+leyenda_checks[i].name+"|";
            }
        }
    }
    data=data+filter2_options;

    var filterPoi_options="&filterPoi=";
    leyenda_checks = getElementsByClass("checkleyendaPoi");
    if (leyenda_checks!=null){
        for (i=0; i<leyenda_checks.length; i++){
            if (leyenda_checks[i].checked){
                filterPoi_options=filterPoi_options+leyenda_checks[i].name+"|";
            }
        }
    }
    data=data+filterPoi_options;
    
    var mostrar_ruta=document.getElementById("mostrar_ruta").checked;
    
    var filterRutas_options="&filterRutas=";

    if (mostrar_ruta){
        var equisemeele=objetusRuta;
        var gids=equisemeele.getElementsByTagName("gids");
        for (i=0; i<gids.length; i++){
            filterRutas_options=filterRutas_options+gids.item(i).firstChild.data+"|";
        
        }
    }
    
    data=data+filterRutas_options;
    data += "&ortofoto=" + document.getElementById("estadoOrtofoto").value;
    data += "&transparencia=" + document.getElementById("transparencia").value;
    carga_mapa(data, false);
    
}

function Pix2Geo(nPixPos, nInversePix)
{

        if (nInversePix==1){
            dfPixMin=0;
            dfPixMax=parseFloat(document.getElementById("mapaimg").height);
            dfGeoMin=parseFloat(document.getElementById("miny").value);
            dfGeoMax=parseFloat(document.getElementById("maxy").value);
        }else{
            dfPixMin=0;
            dfPixMax=parseFloat(document.getElementById("mapaimg").width);
            dfGeoMin=parseFloat(document.getElementById("minx").value);
            dfGeoMax=parseFloat(document.getElementById("maxx").value);
        }
        
       dfWidthGeo = dfGeoMax - dfGeoMin;
       dfWidthPix = dfPixMax - dfPixMin;


       dfPixToGeo = dfWidthGeo / dfWidthPix;

       if (nInversePix==0)
           dfDeltaPix = nPixPos - dfPixMin;
       else
           dfDeltaPix = dfPixMax - nPixPos;

       dfDeltaGeo = dfDeltaPix * dfPixToGeo;


       dfPosGeo = dfGeoMin + dfDeltaGeo;

       return (dfPosGeo);
}

function Geo2Pix(nGeoPos, nInverseGeo){

        if (nInverseGeo==1){
            dfPixMin=0;
            dfPixMax=parseFloat(document.getElementById("alto").value);
            dfGeoMin=parseFloat(document.getElementById("miny").value);
            dfGeoMax=parseFloat(document.getElementById("maxy").value);
            dfGeoHeight=dfGeoMax-dfGeoMin;
            result=parseInt(dfPixMax-(nGeoPos-dfGeoMin)/(dfGeoHeight/dfPixMax));        
        }else{
            dfPixMin=0;
            dfPixMax=parseFloat(document.getElementById("ancho").value);
            dfGeoMin=parseFloat(document.getElementById("minx").value);
            dfGeoMax=parseFloat(document.getElementById("maxx").value);
            dfGeoWidth=dfGeoMax-dfGeoMin;
            result=parseInt(dfPixMin+(nGeoPos-dfGeoMin)/(dfGeoWidth/dfPixMax));
            
        }

        return result;
}

function puntualiza(){
	
	var puntito= document.getElementById("marco");
	puntito.style.display= 'inline';
	
	if(idTercioActivo=='pyr_untercio'){
		puntito.style.top= 144 + parseInt(document.getElementById("mapa").style.top);
		puntito.style.left= 184 + parseInt(document.getElementById("mapa").style.left);
	}
	else if(idTercioActivo=='pyr_dostercios'){
		puntito.style.top= 196 + parseInt(document.getElementById("mapa").style.top);
		puntito.style.left= 254 + parseInt(document.getElementById("mapa").style.left);
	}
	else if(idTercioActivo=='pyr_trestercios'){
		puntito.style.top= 257 + parseInt(document.getElementById("mapa").style.top);
		puntito.style.left= 335 + parseInt(document.getElementById("mapa").style.left);
	}
	
}

function despuntualiza(){
	document.getElementById("activarMarco").value=0;
	document.getElementById("marco").style.display= 'none';
}


/**
* Funcion para pintar el punto parpadeante en la pantalla, en la posicion x e y.
* Los parametros "x" e "y" son para verificar que el punto pulsado cae dentro de la imagen (codificados a geometricas)
*/
function ponerPunto(x, y){
	
	var puntito= document.getElementById("marco");
	puntito.style.display= 'none';
		
	var minx= document.getElementById('minx').value; 
	var miny= document.getElementById('miny').value; 
	var maxx= document.getElementById('maxx').value; 
	var maxy= document.getElementById('maxy').value; 
	//alert(x+' '+y+' '+minx+' '+miny+' '+maxx+' '+maxy);
	
	if(x>minx && x<maxx && y>miny && y<maxy){
		puntito.style.display= 'inline';
		
		//ponerle la posicion
		x= Geo2Pix(parseFloat(x), 0);
		y= Geo2Pix(parseFloat(y), 1);
		
		puntito.style.top= y - parseInt('5')+ parseInt(document.getElementById("mapa").style.top);
		puntito.style.left= x - parseInt('6')+ parseInt(document.getElementById("mapa").style.left);
	}
}

function carga_mapa(opcionesMapa, saveDirPlano){

	//oculto los divs de informacion en caso de haberlos
	cerrarHorario();
	cerrarIframe();
	ocultaLabel();
	ocultar_botones();
    document.getElementById("cartel").style.visibility="visible";

	var aleatorio = Math.random();
	new Ajax.Request(_URL_Interprete_php_moz+opcionesMapa+"&nocache="+aleatorio,
	{
	    method:'get',
	    onSuccess: function(transport){
		    var response = transport.responseText || "no response text";
		    //alert("Success! \n\n" + response);
			
			var equisemeele = getXMLObject(response);
			var nombremapa = equisemeele.getElementsByTagName('imgmap').item(0).firstChild.data;
			if (saveDirPlano) $("imgRutaCalculada").value = nombremapa; 
			if (objetusRuta){
				if($("link_ruta_plano"))
					//$("link_ruta_plano").href='../EMT/imprimirRutaPlano.php?idioma='+$('idioma').value+'&ruta_mapa='+nombremapa;
					$("link_ruta_plano").href='../EMT/imprimirRutaPlano.php?idioma='+$('idioma').value+'&ruta_mapa='+$('imgRutaCalculada').value;
			}
			
			//COMPROBAMOS SI ESTAMOS EN MODO SEGURO
			var strURL = window.location.href;
			if (strURL.indexOf("https") == -1) strURL = _URL_EMT_http_;
			else strURL = _URL_EMT_https_;

			var mapaHTML='<img id="mapaimg" name="mapaimg" src="'+strURL + nombremapa+'" class="dragme" style="position:relative; border: 0px;" usemap="#poimap" />';
			document.getElementById("minx").value=equisemeele.getElementsByTagName('extent')[0].getAttribute('minx');
			document.getElementById("miny").value=equisemeele.getElementsByTagName('extent')[0].getAttribute('miny');
			document.getElementById("maxx").value=equisemeele.getElementsByTagName('extent')[0].getAttribute('maxx');
			document.getElementById("maxy").value=equisemeele.getElementsByTagName('extent')[0].getAttribute('maxy');
			//alert("PRUEBAS IVER: "+$('minx').value+" "+$('miny').value+" "+$('maxx').value+" "+$('maxy').value)

			mapaHTML=mapaHTML+'<map name="poimap">';
			poiElements=equisemeele.getElementsByTagName('poi');

			document.getElementById("escala").value=equisemeele.getElementsByTagName('scale').item(0).firstChild.data
		   
			
			paradasElements=equisemeele.getElementsByTagName('parada');
			for (i=0; i<paradasElements.length; i++){
				name=paradasElements.item(i).getAttribute('idparada')+' - '+paradasElements.item(i).getAttribute('nombre');
				height=20;
				if (name.length>33)
					height+=20;
				name=name+'<br />';
				linesElements=paradasElements.item(i).childNodes;
				
				
				count=0;
				for (j=0; j<linesElements.length; j++){
					line=linesElements.item(j).getAttribute('numero');
					color=linesElements.item(j).getAttribute('tipo');
					estado=linesElements.item(j).getAttribute('estado');
					
					
				  if (estado=="normal")
					  name+='<img src=&quot;'+_rutaBolasLineas_+line+'size20x20W.gif&quot; height=&quot;20px&quot; width=&quot;20px&quot; border=&quot;0&quot; alt=&quot;'+txtLinea[idioma]+' '+line+'&quot; title=&quot;'+txtLinea[idioma]+' '+line+'&quot; />&nbsp;';
					else
					  if (estado=="suprimida")
						name+='<img src=&quot;'+_rutaBolasLineas_+line+'size20x20_Cancelled.gif&quot; height=&quot;20px&quot; width=&quot;20px&quot; border=&quot;0&quot; alt=&quot;'+txtLinea[idioma]+' '+line+'&quot; title=&quot;'+txtLinea[idioma]+' '+line+'&quot; />&nbsp;';
					   else
						if (estado=="provisional")
						  name+='<img src=&quot;'+_rutaBolasLineas_+line+'size20x20_Temporary.gif&quot; height=&quot;20px&quot; width=&quot;20px&quot; border=&quot;0&quot; alt=&quot;'+txtLinea[idioma]+' '+line+'&quot; title=&quot;'+txtLinea[idioma]+' '+line+'&quot; />&nbsp;';
					
					
					if (count!=5 && j!=linesElements.length-1){
						//name=name+'-';
					}
					else{
						height+=23;
						name+='<br />';
					}
					
					count+=1;
					if (count==6){
						count=0;
					}
				}
				
				x=Geo2Pix(parseFloat(paradasElements.item(i).getAttribute('x')), 0);
				y=Geo2Pix(parseFloat(paradasElements.item(i).getAttribute('y')), 1);
				x_map=paradasElements.item(i).getAttribute('x');
				y_map=paradasElements.item(i).getAttribute('y');

			   var tamanyo_poi=5;

				if (parseInt($('escala').value)<20000){
					var tamanyo_poi=7;
				}

				if (parseInt($('escala').value)<10000){
					  var tamanyo_poi=10;
				}
			   
				if (parseInt($('escala').value)<6000){
					  var tamanyo_poi=15;
				}

				/*mapaHTML=mapaHTML+'<area shape="rect" coords="'+(x-_XMIN_RADIO_PARADA_)+','+(y-_YMIN_RADIO_PARADA_)+','+(x+_XMAX_RADIO_PARADA_)+','+(y+_YMAX_RADIO_PARADA_)+'" href="#arribaMapa" class="'+document.getElementById("buttonselected").className+'" onmouseover="muestraLabel('+x+','+y+',\''+name+'\', 2, '+height+'); guardaPosicionParaMoreInfo('+x_map+','+y_map+', \'PARADA\')"  onmouseout="ocultaLabelSiNoFijo(); guardaPosicionParaMoreInfo(0,0,\'STREET\')" >';*/
				mapaHTML=mapaHTML+'<area shape="rect" coords="'+(x-tamanyo_poi)+','+(y-tamanyo_poi)+','+(x+tamanyo_poi)+','+(y+tamanyo_poi)+'" href="#arribaMapa" class="'+document.getElementById("buttonselected").className+'" onmouseover="muestraLabel('+x+','+y+',\''+name+'\', 2, '+height+'); guardaPosicionParaMoreInfo('+x_map+','+y_map+', \'PARADA\')"  onmouseout="ocultaLabelSiNoFijo(); guardaPosicionParaMoreInfo(0,0,\'STREET\')" >';
			}
			
			for (i=0; i<poiElements.length; i++){
				name=poiElements.item(i).getAttribute('name');
				x=Geo2Pix(parseFloat(poiElements.item(i).getAttribute('x')), 0);
				y=Geo2Pix(parseFloat(poiElements.item(i).getAttribute('y')), 1);
				x_map=poiElements.item(i).getAttribute('x');
				y_map=poiElements.item(i).getAttribute('y');
				
				height=20;
				if (name.length>30)
					height=height+17;
				if (name.length>50)
					height=height+17;
					
				 var tamanyo_poi=5;

				if (parseInt($('escala').value)<20000){
					  var tamanyo_poi=7;
				}

				if (parseInt($('escala').value)<10000){
					  var tamanyo_poi=10;
				}
			   
				if (parseInt($('escala').value)<6000){
					  var tamanyo_poi=15;
				}

				/*mapaHTML=mapaHTML+'<area shape="rect" coords="'+(x-_XMIN_RADIO_POI_)+','+(y-_YMIN_RADIO_POI_)+','+(x+_XMAX_RADIO_POI_)+','+(y+_YMAX_RADIO_POI_)+'" href="#arribaMapa" class="'+document.getElementById("buttonselected").className+'" onmouseover="muestraLabel('+x+','+y+',\''+name+'\', 1, '+height+'); guardaPosicionParaMoreInfo('+x_map+','+y_map+', \'POI\')"  onmouseout="ocultaLabelSiNoFijo(); guardaPosicionParaMoreInfo(0,0,\'STREET\')" >';*/
				mapaHTML=mapaHTML+'<area shape="rect" coords="'+(x-tamanyo_poi)+','+(y-tamanyo_poi)+','+(x+tamanyo_poi)+','+(y+tamanyo_poi)+'" href="#arribaMapa" class="'+document.getElementById("buttonselected").className+'" onmouseover="muestraLabel('+x+','+y+',\''+name+'\', 1, '+height+'); guardaPosicionParaMoreInfo('+x_map+','+y_map+', \'POI\')"  onmouseout="ocultaLabelSiNoFijo(); guardaPosicionParaMoreInfo(0,0,\'STREET\')" >';
			}
			
			mapaHTML=mapaHTML+'</map>'; 
			
			document.getElementById("mapa").innerHTML=mapaHTML;
			
			document.getElementById("etiqueta").style.visibility="hidden";
			document.getElementById("etiqueta").className=document.getElementById("buttonselected").className;          
			
			document.getElementById("cartel").style.visibility="hidden";
			mostrar_botones();

			document.getElementById("mapaimg").className=document.getElementById("buttonselected").className;
			
			//activo el punto parpadeante a mitad de la imagen
			if(document.getElementById("activarMarco")){
				if(document.getElementById("activarMarco").value==1){
					puntualiza();
					document.getElementById("activarMarco").value=0;
				}
			}
			
			if(encuadres==0){
				encuadreUtils('get', 0);
				encuadres=1;
			}
			
			if (document.getElementById("extentMinx").value!=0){
				document.getElementById("extentMinx").value=0;
				document.getElementById("extentMiny").value=0;
				document.getElementById("extentMaxx").value=0;
				document.getElementById("extentMaxy").value=0;
			}
			
			//SECCION CODIGO DE ACCESO CIUDAD
			if(flagGlobalAccesoCiudadMostrarInfoParada == 1){
				flagGlobalAccesoCiudadMostrarInfoParada = 0;
				
				var xmin=parseFloat(document.getElementById("puntoAccesoCiudad_x").value)-1;
				var ymin=parseFloat(document.getElementById("puntoAccesoCiudad_y").value)+1;
				var xmax=parseFloat(document.getElementById("puntoAccesoCiudad_x").value)+1;
				var ymax=parseFloat(document.getElementById("puntoAccesoCiudad_y").value)-1;
				var xxx= Geo2Pix(parseFloat($('puntoAccesoCiudad_x').value), 0);
				var yyy= Geo2Pix(parseFloat($('puntoAccesoCiudad_y').value), 1);

				var options='?sec=moreinfo&xmin='+xmin+'&ymin='+ymin+'&xmax='+xmax+'&ymax='+ymax+'&scale='+$('escala').value+'&idioma='+$('idioma').value+'&tipo=PARADA';
				
				moreInfo(options, xxx, yyy);
			}
			if(flagGlobalAccesoCiudad == 1){
				flagGlobalAccesoCiudad = 0;
				ponerPunto($('puntoAccesoCiudad_x').value, $('puntoAccesoCiudad_y').value);						
			}
			//FIN SECCION CODIGO ACCESO CIUDAD
			
			objetusOcupado = 0;
		},
	    onFailure: function(){ 
	        document.getElementById("cartel").style.visibility="hidden";
	        mostrar_botones();
	        alert(txtErrorAlPedirMapa[idioma]);
		}
		
	});
	loquesea();
}

function guardaPosicionParaMoreInfo(x, y, tipo)
{
  document.getElementById("moreInfo_x").value=x;
  document.getElementById("moreInfo_y").value=y;
    document.getElementById("moreInfo_tipoInfo").value=tipo;
}

//flagCancelarRuta
function pide_ruta(opciones, origen){
    
	document.getElementById("cartel").style.visibility="visible";

	var timerID = setTimeout("CancelRoutePetition()", _TIMEOUT_PETICIONES_);
	
	ponerPuntosParaTramoDeRuta("","","","","","");
	
    var aleatorio = Math.random();
	//alert(_URL_mapUtilsPetitions + opciones + "&nocache=" + aleatorio);
	new Ajax.Request(_URL_mapUtilsPetitions + opciones + "&nocache=" + aleatorio,
	{
	    method:'get',
	    onSuccess: function(transport){
		
			if(flagCancelarRuta == 1){
				$("eyr_div_rutas2").innerHTML = txtNoHayRutaCalculada[idioma];
				$("imgRutaCalculada").value = "";
				flagCancelarRuta = 0; //liberar semaforo
			}else{
				var response = transport.responseText || "no response text";
				//alert("Success! \n\n" + response);
				
				//Cortamos el timer
				clearTimeout(timerID);
				
				objetusRuta = getXMLObject(response);
				
				document.getElementById("cartel").style.visibility="hidden";

				try{
					if(objetusRuta!=null){
						if (origen=="mapa"){
							//oculto el boton de cancelar el calculo
							$('cancelarCalculo').style.display='none';
							//mostramos el boton de calcular ruta
							$('btnCalcularRuta').style.display = 'inline';
							
							eyr_tab("Rutas");

							var texto = objetusRuta.getElementsByTagName("rutatexto1").item(0).firstChild.data;
							texto += objetusRuta.getElementsByTagName("rutatexto2").item(0).firstChild.data;
							texto += objetusRuta.getElementsByTagName("rutatexto3").item(0).firstChild.data;
							
							texto= texto.replace(/#origen#/gi, document.getElementById('origenText').value);
							texto= texto.replace(/#destino#/gi, document.getElementById('destinoText').value);
							texto= texto.replace(/#url#/gi, _URL_EmtServlet_graphics);

							// 03/02/2010 -- se elimina el boton de imprimir ruta sin imagen
							$("imprimirRuta").innerHTML='&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="" target="_blank" id="link_ruta_plano"><img src="../EMT/imagenes/printRutaSiPlano.png" border="0" title="'+txtImprimirRutaConPlano[idioma]+'" alt="'+txtImprimirRutaConPlano[idioma]+'" /></a>';
							//$("imprimirRuta").innerHTML='&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../EMT/imprimirRutaTextual.php?idioma='+$('idioma').value+'" target="_blank"><img src="../EMT/imagenes/printRutaNoPlano.png" border="0" title="'+txtImprimirRuta[idioma]+'" alt="'+txtImprimirRuta[idioma]+'" /></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="" target="_blank" id="link_ruta_plano"><img src="../EMT/imagenes/printRutaSiPlano.png" border="0" title="'+txtImprimirRutaConPlano[idioma]+'" alt="'+txtImprimirRutaConPlano[idioma]+'" /></a>';
							document.getElementById("eyr_div_rutas2").innerHTML= texto;
							if(objetusRuta.getElementsByTagName("minx").item(0).firstChild.data!='0.0'){
								$('minx').value= objetusRuta.getElementsByTagName("minx").item(0).firstChild.data;
								$('miny').value= objetusRuta.getElementsByTagName("miny").item(0).firstChild.data;
								$('maxx').value= objetusRuta.getElementsByTagName("maxx").item(0).firstChild.data;
								$('maxy').value= objetusRuta.getElementsByTagName("maxy").item(0).firstChild.data;
								
								 //var orig = objetusRuta.getElementsByTagName("origdestpoints").item(0).childNodes.item(0);
								 //if (orig==null){
								 if (document.all){
								  var orig=objetusRuta.getElementsByTagName("origdestpoints").item(0).childNodes.item(0);
								   var dest = objetusRuta.getElementsByTagName("origdestpoints").item(0).childNodes.item(1);
								  }else{
								  var orig=objetusRuta.getElementsByTagName("origdestpoints").item(0).childNodes.item(1);
								   var dest = objetusRuta.getElementsByTagName("origdestpoints").item(0).childNodes.item(3);
								  }
								// }else{
								  // var dest = objetusRuta.getElementsByTagName("origdestpoints").item(0).childNodes.item(2);
								 //}
							   
							   
								var origx = orig.getAttribute('coordX');
								var origy = orig.getAttribute('coordY');
								var destx = dest.getAttribute('coordX'); 
								var desty= dest.getAttribute('coordY');
								
								var fina= objetusRuta.getElementsByTagName("maxPuntDistinct").item(0).firstChild.data;
								
								ponerPuntosParaTramoDeRuta(origx, origy, destx, desty, '1', fina);//
								
								refrescarPantalla("rutas");
								
							}
							
							//PREPARAR EL XML PARA LA OPCION DE IMPRESION
							//-----------------------------------------------------------------------------------------------------------------------------------------------
							var rutaXML = objetusRuta.getElementsByTagName("rutaXML1").item(0).firstChild.data;
							if(objetusRuta.getElementsByTagName("rutaXML2").item(0).firstChild.data!='&nbsp;') rutaXML += objetusRuta.getElementsByTagName("rutaXML2").item(0).firstChild.data;
							if(objetusRuta.getElementsByTagName("rutaXML3").item(0).firstChild.data!='&nbsp;') rutaXML += objetusRuta.getElementsByTagName("rutaXML3").item(0).firstChild.data;
							
							rutaXML = rutaXML.replace(/#origen#/gi, document.getElementById('origenText').value);
							rutaXML = rutaXML.replace(/#destino#/gi, document.getElementById('destinoText').value);
							rutaXML = rutaXML.replace(/#url#/gi, _URL_EmtServlet_graphics);
							//alert(rutaXML);
							$('rutaXML').innerHTML = rutaXML;
							//var miXML = getXMLObject(rutaXML);
							//alert(miXML);
							//-----------------------------------------------------------------------------------------------------------------------------------------------
							
						}else{
							//cartel cargando
							$("spanCargandoRuta").innerHTML='';
							
							var texto= objetusRuta.getElementsByTagName("rutatexto").item(0).firstChild.data;
							texto= texto.replace(/#origen#/gi, document.getElementById('origenText').value);
							texto= texto.replace(/#destino#/gi, document.getElementById('destinoText').value);
							texto= texto.replace(/#url#/gi, _URL_EmtServlet_graphics);
							//alert(texto)
							document.getElementById("divCalculoRutas").innerHTML= '<br /><fieldset><legend>'+txtRuta[idioma]+': </legend><center><table border="0" width="70%"><tr><td align="left;">'+texto+'</td></tr></table></center></fieldset>';
						}
					}
				}catch(e){
					//error en la consulta
				}
			}
		},
	    onFailure: function(){ 
	        document.getElementById("cartel").style.visibility="hidden";
			alert(txtErrorProcesandoPeticion[idioma]);
		}
	});
}


function validarHora(hora)
{
    var flag= 1;
    
    if (hora.length!=5) flag= 0;
    
    var uno= hora.charAt(0);
    var dos= hora.charAt(1);
    var puntos= hora.charAt(2);
    var tres= hora.charAt(3);
    var cuatro= hora.charAt(4);
    
    if(isNaN(uno) || isNaN(dos) || isNaN(tres) || isNaN(cuatro)) flag= 0;
    if (uno>2 || (uno==2 && dos>3) || tres>5 || puntos!=':') flag= 0;

    return flag;
}


function calcula_ruta(origen){

    if(document.getElementById("origenX").value>0 && document.getElementById("destinoX").value>0)
    {
		//mostramos/ocultamos botones
		$('btnCalcularRuta').style.display = 'none';
		$('cancelarCalculo').style.display = 'inline';
		
		var today=new Date();
		function fmt(v) { return (v < 10) ? '0' + v : v; }
		var date = fmt(today.getDate()) + '-' + fmt(today.getMonth()+1) + '-' + fmt(today.getFullYear());

		//----- ESTADISTICAS ---------------------------------------------------------------
		//TODO: A�ADIR PARAMETROS DE ESTADISTICAS EN ESTA FUNCION
				
		/*	
		�	FU/FS: Fecha del sistema o fecha modificada por el usuario. 
		�	SA/LL: Salida / Llegada
		�	Tx: N�mero m�ximo de transbordos (1 transbordo: T1, 2 transbordos: T2�, sin l�mite: TSL)
		�	xxm: Tiempo m�ximo andando por tramos
		�	MR/MT: M�s r�pida / Menor tiempo caminando
		*/
		//oEstadisticas.reset();
		var info = "";

		if(date == $('fechaOA_pyr').value) info += "FS"
		else info += "FU";
		
		if($('tipoHora_pyr').checked==true) info += "_SA";
		else if($('tipoHora_pyr_').checked==true) info += "_LL";
		
		if($('transbordosOA_pyr').value == '-1') info += "_TSL";
		else info += "_T"+$('transbordosOA_pyr').value;
		
		info += "_"+$('longitudMaximaAPieOA_pyr').value+"m";
		
		if($('tipoRutaOA_pyr').value == '0') info += "_MR";
		else if($('tipoRutaOA_pyr').value == '1') info += "_MT";
		
		oEstadisticas.info = info;
		var peticionEstadisticas = "&herramienta="+oEstadisticas.herramienta+"&opcion="+oEstadisticas.opcion+"&opcion2="+oEstadisticas.opcion2+"&info="+oEstadisticas.info;
		oEstadisticas.setEstadisticas(peticionEstadisticas);
		//--------------------------------------------------------------------
		
		if(document.getElementById("mostrar_ruta"))
			document.getElementById("mostrar_ruta").checked=true;

		var opciones="?sec=calcularuta"
		opciones+="&origenx="+document.getElementById("origenX").value
		opciones+="&origeny="+document.getElementById("origenY").value
		opciones+="&destinox="+document.getElementById("destinoX").value
		opciones+="&destinoy="+document.getElementById("destinoY").value
		

		var today=new Date();
		function fmt(v) { return (v < 10) ? '0' + v : v; }
		var date = fmt(today.getDate()) + '-' + fmt(today.getMonth()+1) + '-' + fmt(today.getFullYear());
		
		var hora = fmt(today.getHours());
		var min = fmt(today.getMinutes());
		var time= hora+":"+min;
		
		if (origen=="mapa"){
			//Ponemos el div de resultado de rutas vacio, por si hubo una ruta calculada anterior y esta no se procesa por algun tipo de error; para que no de pie a confusion.
			$("eyr_div_rutas2").innerHTML= txtNoHayRutaCalculada[idioma];
			$("imgRutaCalculada").value = "";
			$("imprimirRuta").innerHTML='';
					
			//cargamos las opciones de los inputs
			
			//si la fecha que hay en el input es menor que la actual, la actualizamos para que haga una consulta con estimaciones actuales. (si es mayor la dejamos tal cual, pq puede ser para una consulta de un momento futuro, como por ej. unas horas despues)
			//se incluye la fecha en la condicion pq puede pasar esto: 10/10/2007 01:00 < 09/10/2007 20:00 (de este modo se controla que una hora sea superior ya que pertenece a un dia futuro, si no compararamos la fecha, seria inferior)
			if($('fechaOA_pyr').value == date && $('horaOA_pyr').value < time){
				$('horaOA_pyr').value= time;
			}
			opciones+="&fecha="+$('fechaOA_pyr').value+" "+$('horaOA_pyr').value;
			if($('tipoHora_pyr').checked) var tipohora=0;
			else if($('tipoHora_pyr_').checked) var tipohora=1;
			opciones+="&tipohora="+tipohora;
			opciones+="&transbordos="+$('transbordosOA_pyr').value
			opciones+="&tiporuta="+$('tipoRutaOA_pyr').value
			if($("longitudMaximaAPieOA_pyr").value=='' || isNaN(document.getElementById("longitudMaximaAPieOA_pyr").value)) opciones+="&longpie=200";
			else opciones+="&longpie="+$("longitudMaximaAPieOA_pyr").value;
			opciones+="&velocidadpie="+$('velocidadAPieOA_pyr').value
			
			opciones+='&tipoorigen='+$('tipoOrigen').value;
			opciones+='&tipodestino='+$('tipoDestino').value;
			
			if($('origenText').value=='') var direccionorigen= '';
			else var direccionorigen= $('origenText').value;
			opciones+="&direccionorigen="+direccionorigen;
			if($('destinoText').value=='') var direcciondestino= '';
			else var direcciondestino= $('destinoText').value;
			opciones+="&direcciondestino="+direcciondestino;
			
			opciones+="&language="+idioma;
			
			//alert(opciones)
			pide_ruta(opciones, origen);
			
		}else{
			//cargando
			$("spanCargandoRuta").innerHTML='<img style="margin-top: 3px; margin-botton:2px;" border="0" src="../EMT/imagenes/cargando_.gif" alt="'+titleCargando[idioma]+'" title="'+titleCargando[idioma]+'" />';
			
			//opciones de los input
			var date= $('fechaOA').value;
			var time= $("horaOA").value;
			
			opciones+="&fecha="+date+" "+time;
			if($('tipoHora').checked) var tipohora=0;
			else if($('tipoHora_').checked) var tipohora=1;
			opciones+="&tipohora="+tipohora;
			opciones+="&transbordos="+$("transbordosOA").value;
			opciones+="&tiporuta="+$("tipoRutaOA").value;
			if($("longitudMaximaAPieOA").value=='' || isNaN(document.getElementById("longitudMaximaAPieOA").value)) opciones+="&longpie=200";
			else opciones+="&longpie="+$("longitudMaximaAPieOA").value;
			opciones+="&velocidadpie="+$("velocidadAPieOA").value;
			
			opciones+='&tipoorigen='+$('tipoOrigen').value;
			opciones+='&tipodestino='+$('tipoDestino').value;
			
			if($('origenText').value=='') var direccionorigen= '';
			else var direccionorigen= $('origenText').value;
			opciones+="&direccionorigen="+direccionorigen;
			if($('destinoText').value=='') var direcciondestino= '';
			else var direcciondestino= $('destinoText').value;
			opciones+="&direcciondestino="+direcciondestino;
			
			opciones+="&language="+idioma;
			
			//alert('PRUEBA '+opciones)
			pide_ruta(opciones, origen);
		}
    }
    else{
		if (origen=="mapa"){
			$('cancelarCalculo').style.display='none';
			document.getElementById("pyr1_origen_combo1").innerHTML= txtDebeSeleccionarOrigenDestinoAntesCalcular[idioma];
			document.getElementById("pyr1_destino_combo1").innerHTML= txtDebeSeleccionarOrigenDestinoAntesCalcular[idioma];
			setTimeout("document.getElementById('pyr1_origen_combo1').innerHTML='';", 4000);
			setTimeout("document.getElementById('pyr1_destino_combo1').innerHTML='';", 4000);
		}
    }
}


function openNewWindow(opcionesMapa, where){
    
	document.getElementById("cartel").style.visibility="visible";
    ocultar_botones();
	
	var aleatorio = Math.random();
	new Ajax.Request(_URL_Interprete_php_moz + opcionesMapa + "&nocache=" + aleatorio,
	{
	    method:'get',
	    onSuccess: function(transport){
		    var response = transport.responseText || "no response text";
		    //alert("Success! \n\n" + response);
			
			var equisemeele = getXMLObject(response);
			
			var nombremapa = equisemeele.getElementsByTagName('imgmap').item(0).firstChild.data;
                    
			window.open(_URL_printOrEmail + nombremapa+"&where="+where, 'impresion');
			
			document.getElementById("cartel").style.visibility="hidden";
			mostrar_botones();
			
		},
	    onFailure: function(){ 
			document.getElementById("cartel").style.visibility="hidden";
	        mostrar_botones();

	        alert(txtErrorProcesandoPeticion[idioma]);
		}
	});

}

function refrescarPantalla(opcion){
    var minx;
    var miny;
    var maxx;
    var maxy;
    minx=document.getElementById("minx").value;
    miny=document.getElementById("miny").value;
    maxx=document.getElementById("maxx").value;
    maxy=document.getElementById("maxy").value;
    
    if (opcion == "notas") 
    	generaOpcionesMapa(minx, miny, maxx, maxy, "map");
    else generaOpcionesMapa(minx, miny, maxx, maxy, "map2");
}

/*
    los min# son los valores de la x y la y minimos y maximos
    function es la funcion.

    Si la funcion fuera zoom se usarian solo minx y miny como x e y 
    y maxx como el valor de zoom (-2, 1, 2).
*/
function generaOpcionesMapa(minx, miny, maxx, maxy, funcion){
	
	var opciones='';
	var saveDirPlano=false;
		
    if (funcion=="rectangle"){
        opciones="?sec=rect";
    }
    else if (funcion=="zoom"){
        opciones="?sec=zoom";
    }
    else if (funcion=="map"){
        opciones="?sec=map";
    }
    else if (funcion=="map2"){
        opciones="?sec=map";
        saveDirPlano=true;
    }
	
	var today=new Date();
	function fmt(v) { return (v < 10) ? '0' + v : v; }
	var date = fmt(today.getDate()) + '-' + fmt(today.getMonth()+1) + '-' + fmt(today.getFullYear());
	
	var hora = fmt(today.getHours());
	var min = fmt(today.getMinutes());
	var time= hora+":"+min;
	opciones+="&fecha="+$('fechaOA').value+" "+time;
	
    opciones+="&minx="+document.getElementById("minx").value;
    opciones+="&miny="+document.getElementById("miny").value;
    opciones+="&maxx="+document.getElementById("maxx").value;
    opciones+="&maxy="+document.getElementById("maxy").value;
    opciones+="&height="+document.getElementById("alto").value;
    opciones+="&width="+document.getElementById("ancho").value;

	//factorRedimension viene de dimensionar_pyr.js
	//Sirve para reescalar el mapa cuando se cambia de tercios. Para que se vea un nivel de zoom aproximado al actual.
	if(factorRedimension<0){
		// alert("<0 -> "+factorRedimension)
		minx= (minx=='') ? minx : (parseFloat(minx)+(Math.abs(factorRedimension)));
		miny= (miny=='') ? miny : (parseFloat(miny)+(Math.abs(factorRedimension)));
		maxx= (maxx=='') ? maxx : (parseFloat(maxx)-(Math.abs(factorRedimension)));
		maxy= (maxy=='') ? maxy : (parseFloat(maxy)-(Math.abs(factorRedimension)));
		
		factorRedimension=0;
	}
	else if(factorRedimension>0){
		// alert(">0 -> "+factorRedimension)
		minx= (minx=='') ? minx : (parseFloat(minx)-(Math.abs(factorRedimension)));
		miny= (miny=='') ? miny : (parseFloat(miny)-(Math.abs(factorRedimension)));
		maxx= (maxx=='') ? maxx : (parseFloat(maxx)+(Math.abs(factorRedimension)));
		maxy= (maxy=='') ? maxy : (parseFloat(maxy)+(Math.abs(factorRedimension)));
		
		factorRedimension=0;
	}
	else if(factorRedimension==0){
	//nada
	//alert("==0 -> "+factorRedimension)
	}


    opciones=opciones+"&rminx="+minx;
    opciones=opciones+"&rminy="+miny;
    opciones=opciones+"&rmaxx="+maxx;
    opciones=opciones+"&rmaxy="+maxy;
    opciones=opciones+"&idUsuario="+document.getElementById("idUsuario").value;
    opciones=opciones+"&layers=";
    filter_options="&filter=";
    leyenda_checks = getElementsByClass("checkleyendalineas");
    if (leyenda_checks!=null){
        for (i=0; i<leyenda_checks.length; i++){
            if (leyenda_checks[i].checked){
                filter_options += leyenda_checks[i].name+"|";
            }
        }
    }
    opciones += filter_options;
    
    filter2_options="&filter2=";
    leyenda_checks = getElementsByClass("checkleyendapuntos");
    if (leyenda_checks!=null){
        for (i=0; i<leyenda_checks.length; i++){
            if (leyenda_checks[i].checked){
                filter2_options += leyenda_checks[i].name+"|";
            }
        }
    }
    opciones += filter2_options;
    
    filterPoi_options="&filterPoi=";
    leyenda_checks = getElementsByClass("checkleyendaPoi");
    if (leyenda_checks!=null){
        for (i=0; i<leyenda_checks.length; i++){
            if (leyenda_checks[i].checked){
                filterPoi_options += leyenda_checks[i].name+"|";
            }
        }
    }
    opciones += filterPoi_options;
    
	if(document.getElementById("mostrar_ruta"))
		m_ruta=document.getElementById("mostrar_ruta").checked;
    else m_ruta=false;
	
    var filterRutas_options="&filterRutas=";
	var filterRutas_points="&rutasPoints=";

    if (m_ruta && objetusRuta){
        gids=objetusRuta.getElementsByTagName("gids");
        for (i=0; i<gids.length; i++){
            filterRutas_options += gids.item(i).firstChild.data+"|";
        
        }
		    var puntoAX=document.getElementById("puntoAX").value;
		    var puntoAY=document.getElementById("puntoAY").value;
		    var puntoBX=document.getElementById("puntoBX").value;
		    var puntoBY=document.getElementById("puntoBY").value;
		    var textoA=document.getElementById("textoA").value;
		    var textoB=document.getElementById("textoB").value;
		
		    filterRutas_points += puntoAX+","+puntoAY+","+puntoBX+","+puntoBY+","+textoA+","+textoB;
            
    }
	
	//alert(filterRutas_points);
    
    opciones += filterRutas_options+filterRutas_points;
    opciones += "&ortofoto=" + document.getElementById("estadoOrtofoto").value;
    opciones += "&transparencia=" + document.getElementById("transparencia").value;

	//alert(opciones)
    // alert("DESPUES: minx=" + minx + " miny=" + miny + " maxx=" + maxx + " maxy=" + maxy);
	carga_mapa(opciones, saveDirPlano);
}

function ponerPuntosParaTramoDeRuta(puntoAX, puntoAY, puntoBX, puntoBY, textoA, textoB){
	document.getElementById("puntoAX").value=puntoAX;
	document.getElementById("puntoAY").value=puntoAY;
	document.getElementById("puntoBX").value=puntoBX;
	document.getElementById("puntoBY").value=puntoBY;
	document.getElementById("textoA").value=textoA;
	document.getElementById("textoB").value=textoB;
}

function compruebaSiSeMuestra(x,y){
	
	var x_n=parseFloat(x);
	var y_n=parseFloat(y);
	
	var minx=parseFloat(document.getElementById("minx_div").value);
	var miny=parseFloat(document.getElementById("miny_div").value);
	var maxx=parseFloat(document.getElementById("maxx_div").value);
	var maxy=parseFloat(document.getElementById("maxy_div").value);
	
	if (maxx>x_n && minx<x_n && maxy>y_n && miny<y_n){
		return true;
	}
	
	return false;
}


function moreInfo(opciones, x, y){

    document.getElementById("cartel").style.visibility="visible";
    ocultar_botones();

	var aleatorio = Math.random();
	var today=new Date();
	function fmt(v) { return (v < 10) ? '0' + v : v; }
	var date = fmt(today.getDate()) + '-' + fmt(today.getMonth()+1) + '-' + fmt(today.getFullYear());
	
	var hora = fmt(today.getHours());
	var minu = fmt(today.getMinutes());
	var time= hora+":"+minu;
	
	new Ajax.Request(_URL_mapUtilsPetitions+opciones+"&fecha="+$('fechaOA').value+" "+time+"&nocache="+aleatorio,
	{
	    method:'get',
	    onSuccess: function(transport){
		    var response = transport.responseText || "no response text";
		    //alert("Success! \n\n" + response);
			
			var equisemeele = getXMLObject(response);
			//alert(transport.responseText);
			//texto=equisemeele.getElementsByTagName("masinfotext").item(0).firstChild.data;

			var texto='';
			
			if(equisemeele.getElementsByTagName('codigoparada').length!=0){
				
				var codigoparada= equisemeele.getElementsByTagName('codigoparada').item(0).firstChild.data;
				var nombreparada= equisemeele.getElementsByTagName('nombreparada').item(0).firstChild.data;
				var calle= equisemeele.getElementsByTagName('calle').item(0).firstChild.data;
				var infoparada= equisemeele.getElementsByTagName('infoparada').item(0).firstChild.data;
				texto+= 'PARADA***'+codigoparada+'***'+nombreparada+'***'+calle+'***'+infoparada
				
			}
			else if(equisemeele.getElementsByTagName('poi').length!=0){

				var enlace= equisemeele.getElementsByTagName('enlace').item(0).firstChild.data;
				var nombre= equisemeele.getElementsByTagName('nombre').item(0).firstChild.data;
				texto+= 'POI***'+enlace+'***'+nombre
			}
			else if(equisemeele.getElementsByTagName('street').length!=0){
				
				var calle='';
				if(equisemeele.getElementsByTagName('calle').item(0).hasChildNodes())
					calle= equisemeele.getElementsByTagName('calle').item(0).firstChild.data;
				else
					calle=''; 
				var lineascercanas= equisemeele.getElementsByTagName('lineascercanas').item(0).firstChild.data;
				texto+= 'CALLE***'+calle+'***'+lineascercanas
				if(equisemeele.getElementsByTagName('lineasmuycercanas').length!=0 && equisemeele.getElementsByTagName('numLineasmuycercanas').item(0).firstChild.data!=0){
					getLineasMuycercanasInfo(equisemeele);
				}
			}


			//caso especial: los divs de lineas son mas pequenyos.
			if(texto.indexOf(txtNoHayLineasCercanas[idioma]) !=-1) height=15;
			else height=80;
			//cuento la cantidad de saltos, para anyadir height al div
			var aux= texto.split('<tr>');
			height +=aux.length*18
			
			if (aux.length>1)
				height+=20;
		
			muestraLabel(x, y, texto, 3, height);
			
			document.getElementById("cartel").style.visibility="hidden";
			mostrar_botones();
			
		},
	    onFailure: function(){ 
			document.getElementById("cartel").style.visibility="hidden";
	        mostrar_botones();

	        alert(txtErrorProcesandoPeticion[idioma]);
		}
	});
}

//global con los datos de las lineas muy cercanas a un punto
var lineasmuycercanas="";
/**
* Convierte el xml de lineas cercanas a un punto en un div para mostrarlo en la ventana de informacion del plano.
* Recibe xml con la informacion de getMoreInfo (del cual solo nos interesa el nodo <lineasmuycercanas>)
*/
function getLineasMuycercanasInfo(xmldata){

	var numLineasmuycercanas= xmldata.getElementsByTagName('numLineasmuycercanas').item(0).firstChild.data;
	var html = '<div id="PRIMARIO" style="clear: both; text-align:center; margin-left: 5px; margin-right: 5px; display:inline"><table border="0" width="100%">';

	var visibles = '<tr><td align="center" class="tabla_moreInfo">';
	var flagVisibles = false;
	var contVisibles = 0;
	var ocultas = visibles;
	var flagOcultas = false;
	var contOcultas = 0;
	for(i=0; i<numLineasmuycercanas; i++){
	 
		var nodoLinea= xmldata.getElementsByTagName('linea').item(i);
		var idlinea = nodoLinea.attributes[0].nodeValue;
		var idruta = nodoLinea.attributes[1].nodeValue;
		var estado = nodoLinea.attributes[2].nodeValue; //0, 1, 2 (estable, suprimida, provisional)

		
		var elemento = document.getElementById("_checklinea_"+idruta);
		if(elemento && elemento.checked){
			if(contVisibles==7){
				visibles +='</br>';
				contVisibles=0;
			}
			if(estado==0)//ESTABLE
				visibles += '<img src="'+_rutaBolasLineas_+idlinea+'size20x20W.gif" height="20px" width="20px" border="0" alt="'+txtLinea[idioma]+' '+idlinea+'" title="'+txtLinea[idioma]+' '+idlinea+'" />&nbsp;';
			else if(estado==1)//SUPRIMIDA
				visibles += '<img src="'+_rutaBolasLineas_+idlinea+'size20x20_Cancelled.gif" height="20px" width="20px" border="0" alt="'+txtLinea[idioma]+' '+idlinea+' ('+txtCancelada[idioma]+')" title="'+txtLinea[idioma]+' '+idlinea+' ('+txtCancelada[idioma]+')" />&nbsp;';
			else//PROVISIONAL
				visibles += '<img src="'+_rutaBolasLineas_+idlinea+'size20x20_Temporary.gif" height="20px" width="20px" border="0" alt="'+txtLinea[idioma]+' '+idlinea+' ('+txtProvisional[idioma]+')" title="'+txtLinea[idioma]+' '+idlinea+' ('+txtProvisional[idioma]+')" />&nbsp;';
			flagVisibles=true;
			contVisibles++;
		}
		else{
			if(contOcultas==7){
				ocultas +='</br>';
				contOcultas=0;
			}
			if(estado==0)//ESTABLE
				ocultas += '<img src="'+_rutaBolasLineas_+idlinea+'size20x20W.gif" height="20px" width="20px" border="0" alt="'+txtLinea[idioma]+' '+idlinea+'" title="'+txtLinea[idioma]+' '+idlinea+'" />&nbsp;';
			else if(estado==1)//SUPRIMIDA
				ocultas += '<img src="'+_rutaBolasLineas_+idlinea+'size20x20_Cancelled.gif" height="20px" width="20px" border="0" alt="'+txtLinea[idioma]+' '+idlinea+' ('+txtCancelada[idioma]+')" title="'+txtLinea[idioma]+' '+idlinea+' ('+txtCancelada[idioma]+')" />&nbsp;';	
			else//PROVISIONAL
				ocultas += '<img src="'+_rutaBolasLineas_+idlinea+'size20x20_Temporary.gif" height="20px" width="20px" border="0" alt="'+txtLinea[idioma]+' '+idlinea+' ('+txtProvisional[idioma]+')" title="'+txtLinea[idioma]+' '+idlinea+' ('+txtProvisional[idioma]+')" />&nbsp;';	
			flagOcultas= true;
			contOcultas++;
		}
	}

	if(flagVisibles== true){
		html += '<tr><td align="center" class="tabla_moreInfo"><b>'+txtLineasVisibles[idioma]+'</b></td></tr>';
		html += visibles+'</td></tr>';
		
	}
	if(flagOcultas== true){
		html += '<tr><td align="center" class="tabla_moreInfo"><b>'+txtLineasOcultas[idioma]+'</b></td></tr>';
		html += ocultas+'<br />'+txtNotaLineasNoVisibles[idioma]+'</td></tr>';
	}
	
	html += '<tr><td colspan="2" align="center" class="tabla_moreInfo"><a href="#arribamapa" onclick="cambioDIVInformacion(\'paradas\')">'+txtParadasCercanas[idioma]+'</a></td></tr></table></div>';
	lineasmuycercanas = html;
}

function cambioDIVInformacion(option){
	var cabecera = $("cap_etiqueta");
	
	if(option == 'paradas'){
		$('PRIMARIO').style.display = 'none'; 
		$('SECUNDARIO').style.display = 'inline';
		
		var ini = cabecera.innerHTML.indexOf(txtLineas[idioma]);
		var cadena = "";
		if(idioma=="es"){
			cadena += cabecera.innerHTML.substring(0, ini);
			cadena += txtParadas[idioma];
			cadena += cabecera.innerHTML.substring(ini+txtLineas[idioma].length);
		}else if(idioma=="en"){
			cadena += cabecera.innerHTML.substring(0, ini);
			cadena += txtParadas[idioma];
			cadena += cabecera.innerHTML.substring(ini+txtLineas[idioma].length);
		}else if(idioma=="va"){
			cadena += cabecera.innerHTML.substring(0, ini);
			cadena += txtParadas[idioma];
			cadena += cabecera.innerHTML.substring(ini+txtLineas[idioma].length);
		}
		cabecera.innerHTML = cadena;
		
	}else if(option == 'lineas'){
		$('PRIMARIO').style.display = 'inline';
		$('SECUNDARIO').style.display ='none';
	
		var ini = cabecera.innerHTML.indexOf(txtParadas[idioma]);
		var cadena = "";
		if(idioma=="es"){
			cadena += cabecera.innerHTML.substring(0, ini);
			cadena += txtLineas[idioma];
			cadena += cabecera.innerHTML.substring(ini+txtParadas[idioma].length);
		}else if(idioma=="en"){
			cadena += cabecera.innerHTML.substring(0, ini);
			cadena += txtLineas[idioma];
			cadena += cabecera.innerHTML.substring(ini+txtParadas[idioma].length);
		}else if(idioma=="va"){
			cadena += cabecera.innerHTML.substring(0, ini);
			cadena += txtLineas[idioma];
			cadena += cabecera.innerHTML.substring(ini+txtParadas[idioma].length);
		}
		cabecera.innerHTML = cadena;
	}
	
}

function printMapa(where){

    var opciones="?sec=map";

	var today=new Date();
	function fmt(v) { return (v < 10) ? '0' + v : v; }
	var date = fmt(today.getDate()) + '-' + fmt(today.getMonth()+1) + '-' + fmt(today.getFullYear());
	
	var hora = fmt(today.getHours());
	var min = fmt(today.getMinutes());
	var time= hora+":"+min;
	opciones+="&fecha="+$('fechaOA').value+" "+time;
	
    opciones=opciones+"&minx="+document.getElementById("minx").value;
    opciones=opciones+"&miny="+document.getElementById("miny").value;
    opciones=opciones+"&maxx="+document.getElementById("maxx").value;
    opciones=opciones+"&maxy="+document.getElementById("maxy").value;
    opciones=opciones+"&height=500";
    opciones=opciones+"&width=640";
    opciones=opciones+"&rminx="+document.getElementById("minx").value;
    opciones=opciones+"&rminy="+document.getElementById("miny").value;
    opciones=opciones+"&rmaxx="+document.getElementById("maxx").value;
    opciones=opciones+"&rmaxy="+document.getElementById("maxy").value;
    opciones=opciones+"&idUsuario="+document.getElementById("idUsuario").value;
    opciones=opciones+"&layers=";
    filter_options="&filter=";
    leyenda_checks = getElementsByClass("checkleyendalineas");
    if (leyenda_checks!=null){
        for (i=0; i<leyenda_checks.length; i++){
            if (leyenda_checks[i].checked){
                filter_options=filter_options+leyenda_checks[i].name+"|";
            }
        }
    }
    opciones=opciones+filter_options;
    
    filter2_options="&filter2=";
    leyenda_checks = getElementsByClass("checkleyendapuntos");
    if (leyenda_checks!=null){
        for (i=0; i<leyenda_checks.length; i++){
            if (leyenda_checks[i].checked){
                filter2_options=filter2_options+leyenda_checks[i].name+"|";
            }
        }
    }
    opciones=opciones+filter2_options;
    
    filterPoi_options="&filterPoi=";
    leyenda_checks = getElementsByClass("checkleyendaPoi");
    if (leyenda_checks!=null){
        for (i=0; i<leyenda_checks.length; i++){
            if (leyenda_checks[i].checked){
                filterPoi_options=filterPoi_options+leyenda_checks[i].name+"|";
            }
        }
    }
    opciones=opciones+filterPoi_options;
    
    m_ruta=document.getElementById("mostrar_ruta").checked;
    
    filterRutas_options="&filterRutas=";
	  filterRutas_points="&rutasPoints=";

    if (m_ruta && objetusRuta){
        gids=objetusRuta.getElementsByTagName("gids");
        for (i=0; i<gids.length; i++){
            filterRutas_options=filterRutas_options+gids.item(i).firstChild.data+"|";
        
        }
		    var puntoAX=document.getElementById("puntoAX").value;
		    var puntoAY=document.getElementById("puntoAY").value;
		    var puntoBX=document.getElementById("puntoBX").value;
		    var puntoBY=document.getElementById("puntoBY").value;
		    var textoA=document.getElementById("textoA").value;
		    var textoB=document.getElementById("textoB").value;
		
		    filterRutas_points+=puntoAX+","+puntoAY+","+puntoBX+","+puntoBY+","+textoA+","+textoB;
            
    }
	
	//alert(filterRutas_points);
    
    opciones=opciones+filterRutas_options+filterRutas_points;
    
	//document.getElementById('errores').innerHTML=opciones;

    
    openNewWindow(opciones, where);

}

//altura de la cabecera en funcion del num de caracteres (1linea = 32 caracteres)
function calculaAlturaCabecera(cadena){
	
		var long= cadena.length;
		if(long>30){
			//alert('long: '+long)
			var multiplo= Math.ceil(long/30);
			//alert('multiplo: '+multiplo)
			altura= multiplo*17;
		}
		else altura=19;
		
		return altura;
}

/**
* Calcula la posicion del div acorde a la posicion donde se pinche y la resolucion de la pantalla.
* Se divide la imagen en 4 cuadrantes y se intercambia al contrario de donde se pinche, para no tapar nada.
*/
function calculaPosicionDIV(x, y, altura){
	
	var equis=0;
	var ygriega=0;

	
	if(idTercioActivo=='pyr_untercio'){
		equis= 300;
		ygriega= 0;
	}
	else if(idTercioActivo=='pyr_dostercios'){
		if(x<=257 && y<=167){
			equis= 260;
			ygriega= 30;
		}
		else if(x>257 && y<167){
			equis= 15;
			ygriega= 30;
		}
		else if(x<=257 && y>167){
			equis= 260;
			ygriega= 180;
		}
		else if(x>257 && y>167){
			equis= 15;
			ygriega= 180;
		}	
	}
	else if(idTercioActivo=='pyr_trestercios'){
		if(x<=341 && y<=253){
			equis= 400;
			ygriega= 30;
		}
		else if(x>341 && y<253){
			equis= 80;
			ygriega= 30;
		}
		else if(x<=341 && y>253){
			equis= 400;
			ygriega= 250;
		}
		else if(x>341 && y>253){
			equis= 80;
			ygriega= 250;
		}
	}
	
	var etiqueta=document.getElementById("etiqueta");
    var cabecera=document.getElementById("cap_etiqueta");
	
	cabecera.style.top= ygriega + parseInt(document.getElementById("mapa").style.top)
    cabecera.style.left= equis+ parseInt(document.getElementById("mapa").style.left)
    etiqueta.style.top= ygriega + parseInt(document.getElementById("mapa").style.top) + altura;
    etiqueta.style.left= equis + parseInt(document.getElementById("mapa").style.left);
    
	//guardo la posicion para poder colocar el div de horarios superpuesto a esta ventana.
	document.getElementById("horariosX").value= parseInt((cabecera.style.left).split('px'));
	document.getElementById("horariosY").value= parseInt((cabecera.style.top).split('px'));
}

function posicionaIframe(url){
	var divIframe= document.getElementById('iframeInfociudad');
	var cuerpoIframe= document.getElementById('cuerpoIframe');
	var cabecera=document.getElementById("cap_etiqueta");
	//alert(url);
	divIframe.style.display= 'inline';
	divIframe.style.top= parseInt(cabecera.style.top) + 5;
	divIframe.style.left= parseInt(cabecera.style.left) + 5;

	cuerpoIframe.innerHTML= '<iframe src="'+url+'" width="350" height="222" frameborder="0">'+txtFichaInformacionNoDisponible[idioma]+'</iframe>';

}
function cerrarIframe(){
	document.getElementById("cuerpoIframe").innerHTML= '';
	document.getElementById("iframeInfociudad").style.display= 'none';
	
}


function muestraLabel(x, y, txtCuerpo, type, height){

	var etiqueta = $("etiqueta");
    var cabecera = $("cap_etiqueta");

	//--- separamos de la cadena que llega las partes linea/calle/paradas ----
	var arrai= txtCuerpo.split('***');
	var txtCabecera='';
	var altura=19;

	if(arrai[0]=='POI'){
		txtCabecera+= '<div style="text-align: center;"><span style="color: #FFFFFF; text-size: 6px; font-weight: bold; text-align: center;">'+arrai[2]+'</span></div>';
		txtCuerpo= '';
		
		//altura de la cabecera en funcion del num de caracteres
		altura= calculaAlturaCabecera(arrai[2]);
	}
	else if(arrai[0]=='PARADA'){
		var sustituto= arrai[2].replace("\\'", "'");
		var sustituto2= arrai[3].replace("\\'", "'");
		
		txtCabecera+= '<div style="color: #FFFFFF; text-size: 7px; font-weight: bold; text-align:center;">'+arrai[1]+' - '+sustituto+'<br />'+sustituto2+'</div>';
		txtCuerpo= arrai[4];
		
		//altura de la cabecera en funcion del num de caracteres + 5
		altura= calculaAlturaCabecera(arrai[1] + ' - ' + arrai[2]);
		altura+=17;
		
		//casos especiales donde la direccion es mas larga de lo normal
		if(arrai[3].length>34)
			altura+=17;
		
		//las paradas tienen minimo 2 lineas.
		if(altura<=19) altura= 38;
	}
	else if(arrai[0]=='CALLE'){
		if(arrai[1].length!=0){
			if(lineasmuycercanas!="")
				txtCabecera+= '<div style="color: #FFFFFF; text-size: 7px; font-weight: bold; text-align:center;">'+txtLineasCercanasA[idioma]+'<br />'+arrai[1]+'</div>';
			else
				txtCabecera+= '<div style="color: #FFFFFF; text-size: 7px; font-weight: bold; text-align:center;">'+txtParadasCercanasA[idioma]+'<br />'+arrai[1]+'</div>';
			
			//altura de la cabecera en funcion del num de caracteres + 32 caracteres de la linea de "lineas cercanas a:"
			altura= calculaAlturaCabecera(arrai[1]+ 'treintaidossssssssssssssssssssss');
		}
		else{
			txtCabecera+= '';
			altura= 19;
		}
		txtCuerpo= arrai[2];
	}
	
    
    if (labelAbierto==0){

        if(type==3){
			//DIV DE INFORMACION DE UN PUNTO EN EL PLANO (YA SEA PARADA, O CALLE)
			
        	var infocap= '<div style="float:left; width:197px;">'+txtCabecera+'</div><div style="float:right; width:16px; margin:1px"><a href="#arribaMapa" onclick="ocultaLabel()"><img src="../EMT/imagenes/aspa.jpg" border="0" title="'+titleCerrarVentana[idioma]+'" alt="'+titleCerrarVentana[idioma]+'" /></a></div>';
        	cabecera.innerHTML= infocap;

			//INTRODUCIMOS PRIMERO EL DIV DE LINEAS MUY CERCANAS EN CASO DE EXISTIR
			if(lineasmuycercanas!="" && arrai[0]=='CALLE'){
				var cambio= '<br /><center><a href="#arribamapa" onclick="cambioDIVInformacion(\'lineas\')">'+txtLineasCercanas[idioma]+'</a></center>';
				var info= lineasmuycercanas+'<div id="SECUNDARIO" style="clear: both; text-align:center; margin-left: 5px; margin-right: 5px; display:none">'+txtCuerpo+cambio+'</div>';
				
				etiqueta.innerHTML= info;
				//importante: limpiar la variable para la siguiente ronda
				lineasmuycercanas="";
			}else{
				var info= '<div style="clear: both; text-align:center; margin-left: 5px; margin-right: 5px;">'+txtCuerpo+'</div>';
				etiqueta.innerHTML= info;
			}    		
    		calculaPosicionDIV(x, y, altura);
        }else{
		
			document.getElementById('minx_div').value=x-10;
			document.getElementById('miny_div').value=y-10;
			document.getElementById('maxx_div').value=x+10;
			document.getElementById('maxy_div').value=y+10;
		
			etiqueta.innerHTML='<p style="text-align: center; margin-left: 5px; margin-right: 5px;">'+txtCuerpo+'</p>';
			
	        etiqueta.style.top=y+parseInt(document.getElementById("mapa").style.top)+50;
	        etiqueta.style.left=x+parseInt(document.getElementById("mapa").style.left)-60;
    	}

		//TAMA�OS DE LA CABECERA Y CUERPO DEL DIV DE INFORMACION
        if(type==3){
        	cabecera.style.display="inline";
        	
        	cabecera.style.backgroundColor= '#CC0000'

        	cabecera.style.height= altura
        	cabecera.style.width=220
        	etiqueta.style.height=160;
        	etiqueta.style.width=220;
        	etiqueta.style.overflow='auto';
        	
        	//---- marco del poi o parada ----
        	var marco= document.getElementById('marco');
        	marco.style.display= 'inline';
        	marco.style.top= y + parseInt(document.getElementById("mapa").style.top)-6;
        	marco.style.left= x + parseInt(document.getElementById("mapa").style.left)-6;
        }
        else{
        	etiqueta.style.height=height;
			etiqueta.style.width=180;
        }
        cabecera.style.borderWidth=2;
        etiqueta.style.borderWidth=1;
        
       
        if (document.getElementById("mapaimg").className!="capturepoint"){
            if (document.getElementById("rect").style.visibility!="visible"){
                document.getElementById("estadoAnterior").value=document.getElementById("mapaimg").className;
                capturePoint('mas_info', '');
                cambiado=1;
            }
        }
        
        if (type==3){
            labelAbierto=1;
            
            //ORIGEN - DESTINO-> hay 3 opciones:
            /*
		            1.-<a> punto de interes (posible origen/destino)
		            2.-<h3> parada (posible origen/destino)
		            3.-<p> calle o finca (no mostraremos opciones)
		            */

            var pos= txtCuerpo.indexOf('<center><table border="0"><tr><td align="right" class="tabla_moreInfo"><img')
            if(pos==0){
                //CASO PARA LAS PARADAS

	                //origen-destino
					//arrai[1] - array[2] ==> numero parada - nombre parada
	                var enlaces= seleccionOrigenDestino(x, y, arrai[1]+' - '+arrai[2]);
	                etiqueta.innerHTML+= enlaces;

                //QUE TENGO CERCA
                etiqueta.innerHTML+='<center><table border="0" width="95%" class="tabla_moreInfo"><tbody><tr><td align="center" class="tabla_moreInfo"><a href="#ancla_pyr1" onclick="queTengoCerca(\'parada\', \''+arrai[1]+'\');"><img src="../EMT/imagenes/pi.gif" border="0" alt="'+txtQueTengoCerca[idioma]+'" title="'+txtQueTengoCerca[idioma]+'" />'+txtQueTengoCerca[idioma]+'</a></td></tr><tr><td align="center" class="tabla_moreInfo"><a href="#arribaMapa" onclick="ocultaLabel()">'+txtCerrar[idioma]+'</a></td></tr></tbody></table></center>';
            }
            else{
                if(txtCuerpo==''){
                    //CASO PARA LOS PUNTOS DE INTERES

                    //origen-destino
					etiqueta.innerHTML+= '<center><table border="0" width="95%" class="tabla_moreInfo"><tbody><tr><td align="center" class="tabla_moreInfo"><a href="#arribaMapa" onclick="posicionaIframe(\''+arrai[1]+'\')"><img src="../EMT/imagenes/iconoinfo.gif" border="0" alt="'+txtVerFicha[idioma]+'" title="'+txtVerFicha[idioma]+'" />'+txtVerFicha[idioma]+'</a></td></tr></tbody></table></center>';
					var enlaces= seleccionOrigenDestino(x, y, arrai[2]);
                    etiqueta.innerHTML+= enlaces;
                    
                    //QUE TENGO CERCA
                    etiqueta.innerHTML+='<center><table border="0" width="95%" class="tabla_moreInfo"><tbody><tr><td align="center" class="tabla_moreInfo"><a href="#ancla_pyr1" onclick="queTengoCerca(\'puntoInteres\', \''+arrai[2]+'\');"><img src="../EMT/imagenes/pi.gif" border="0" alt="'+txtQueTengoCerca[idioma]+'" title="'+txtQueTengoCerca[idioma]+'" />'+txtQueTengoCerca[idioma]+'</a></td></tr><tr><td align="center" class="tabla_moreInfo"><a href="#arribaMapa" onclick="ocultaLabel()">'+txtCerrar[idioma]+'</a></td></tr></tbody></table></center>';
                }
                else{
					//CASO PARA LAS CALLES
                    etiqueta.innerHTML+='<center><table border="0"><tr><td class="tabla_moreInfo"><a href="#arribaMapa" onclick="ocultaLabel()">'+txtCerrar[idioma]+'</a></td></tr></table></center>';
                }
            }
        }
        
        if (document.getElementById("rect").style.visibility!="visible"){
            etiqueta.style.visibility="visible";
        }
        
    }
}

//funcion para crear los enlaces de seleccion de los puntos de origen y destino en los divs de informacion de los puntos del mapa.
//Si el punto ha sido seleccinado, la imagen sera Verde y positiva
//Si el punto no ha sido seleccionado, la imagen sera Roja y negativa.
function seleccionOrigenDestino(x, y, text){

    var etiqueta='<center><table border="0" width="100%" class="tabla_moreInfo"><tbody><tr><td align="right" class="tabla_moreInfo" width="25%">';

    if(document.getElementById('origenText').value== text) 
        etiqueta+= '<img src="../EMT/imagenes/origen_V.gif" border="0" alt="'+titleImagenOrigenSeleccionada[idioma]+'" title="'+titleImagenOrigenSeleccionada[idioma]+'" /></td><td align="left" class="tabla_moreInfo">&nbsp;&nbsp;'+txtIrDesdeAquiHasta[idioma];
    else 
        etiqueta+= '<img id="imgOrigen" src="../EMT/imagenes/origen_X.gif" border="0" alt="'+titleSeleccionPuntoOrigen[idioma]+'" title="'+titleSeleccionPuntoOrigen[idioma]+'" /></td><td align="left" class="tabla_moreInfo">&nbsp;&nbsp;<a href="#arribaMapa" onclick="seleccionaPunto(\'origen\','+x+','+y+', \''+text+'\'); queTengoCerca(\'comoIrA\', \'Destino\');">'+txtIrDesdeAquiHasta[idioma]+'</a>';
        
    etiqueta+='</td></tr><tr><td align="right" class="tabla_moreInfo" width="10%">';

    if(document.getElementById('destinoText').value== text) 
        etiqueta+= '<img src="../EMT/imagenes/destino_V.gif" border="0"  alt="'+titleImagenDestinoSeleccionada[idioma]+'" title="'+titleImagenDestinoSeleccionada[idioma]+'" /></td><td align="left" class="tabla_moreInfo">&nbsp;&nbsp;'+txtLlegarAquiDesde[idioma];
    else 
        etiqueta+= '<img id="imgDestino" src="../EMT/imagenes/destino_X.gif" border="0" alt="'+titleSeleccionPuntoDestino[idioma]+'" title="'+titleSeleccionPuntoDestino[idioma]+'" /></td><td align="left" class="tabla_moreInfo">&nbsp;&nbsp;<a href="#arribaMapa" onclick="seleccionaPunto(\'destino\','+x+','+y+', \''+text+'\'); queTengoCerca(\'comoIrA\', \'Origen\');">'+txtLlegarAquiDesde[idioma]+'</a>';

    etiqueta+='</td></tr></tbody></table></center>';

    return etiqueta;
}

function seleccionaPunto(opcion, x, y, text){

    if(opcion=='origen'){
        document.getElementById('origenText').value= text;
        document.getElementById('tabLugarOrigen').innerHTML= (document.getElementById('origenText').value).substr(0,32);
        document.getElementById('origenX').value= Pix2Geo(x, 0);
        document.getElementById('origenY').value= Pix2Geo(y, 1);
        document.getElementById('imgOrigen').src="../EMT/imagenes/origen_V.gif"
        //cambiar imagenes de control de puntos seleccionados
        document.getElementById('origen_XV').src='../EMT/imagenes/origen_V.gif'
        document.getElementById('origen_XV').title= titleImagenOrigenSeleccionada[idioma];
        
    }
    else{
        document.getElementById('destinoText').value= text;
        document.getElementById('tabLugarDestino').innerHTML= (document.getElementById('destinoText').value).substr(0,32);
        document.getElementById('destinoX').value= Pix2Geo(x, 0);
        document.getElementById('destinoY').value= Pix2Geo(y, 1);
        document.getElementById('imgDestino').src="../EMT/imagenes/destino_V.gif"
        //cambiar imagenes de control de puntos seleccionados
        document.getElementById('destino_XV').src='../EMT/imagenes/destino_V.gif'
        document.getElementById('destino_XV').title= titleImagenDestinoSeleccionada[idioma];
    }
    
    //Si no se esta en el tab de "Como ir a..." no se puede ejecutar,
    //asi que pondremos el flag valido para ejecutarlo y lo volvemos a cancelar.
    if(flagBD==1)
        setUserRoute();
    else{
        flagBD=1;
        setUserRoute();
        flagBD=0;
    }
}


function queTengoCerca(opcion, direccion){

	ocultaLabel();
	
	
	if(opcion=='parada'){
		marcarPestanyaPyR('3');
		pyr_3_pie_menus(4);
		spanBusquedaParadas(3,'pyr3_origen');
		
		//poner en el input solo lo que esta entrecomillado
		var posicion1= direccion.indexOf('*', 0);
		if(posicion1!=-1){
			posicion1++;
			var posicion2= direccion.indexOf('*', posicion1);
			var cadena= direccion.substr(posicion1, posicion2-posicion1);

			$('pyr3_origen_BusquedaParada').value= cadena;
		}
		//no hay comillas, asi que pongo toda la cadena
		else $('pyr3_origen_BusquedaParada').value= direccion;
		
		
		findParadaPorNombre('pyr3_origen');
	}
	else if(opcion=='puntoInteres'){
		marcarPestanyaPyR('3');
		pyr_3_pie_menus(3);
		spanLugarInteres(1, 'pyr3_origen');

		//poner en el input solo lo que esta entrecomillado
		var posicion1= direccion.indexOf('*', 0);
		if(posicion1!=-1){
			posicion1++;
			var posicion2= direccion.indexOf('*', posicion1);
			var cadena= direccion.substr(posicion1, posicion2-posicion1);
			
			$('pyr3_origen_lugarInteres').value= cadena;
		}
		//no hay comillas, asi que pongo toda la cadena
		else $('pyr3_origen_lugarInteres').value= direccion;
		
		findPoint('pyr3_origen');
	}
	//else deprecated
	else if(opcion=='comoIrA'){
		marcarPestanyaPyR('1');

		if(direccion=="Destino")
			pyr_1_pie_tab('Destino');
		else if(direccion=="Origen") 
			pyr_1_pie_tab('Origen');
	}
	else if(opcion=='calle'){
	
		marcarPestanyaPyR('3');
		pyr_3_pie_menus(1);
		//spanBusquedaCalle(3,'pyr3_origen');
		
		//poner en el input solo lo que esta entrecomillado
		var posicion1= direccion.indexOf('*', 0);
		if(posicion1!=-1){
			posicion1++;
			var posicion2= direccion.indexOf('*', posicion1);
			var cadena= direccion.substr(posicion1, posicion2-posicion1);

			var dir = cadena.split(', ');
			document.getElementById("pyr3_origen_street").value= dir[0];
			document.getElementById("pyr3_origen_number").value= dir[1];

			//$('pyr3_origen_street').value= cadena;
		}
		//no hay comillas, asi que pongo toda la cadena
		else {
			//$('pyr3_origen_street').value= direccion;
			var dir = direccion.split(', ');
			document.getElementById("pyr3_origen_street").value= dir[0];
			document.getElementById("pyr3_origen_number").value= dir[1];
		}
			
		findStreet('pyr3_origen');

	}
	else if(opcion=='esquina'){
	
		marcarPestanyaPyR('3');
		pyr_3_pie_menus(2);
		//spanBusquedaCalle(3,'pyr3_origen');
		
		//poner en el input solo lo que esta entrecomillado
		var posicion1= direccion.indexOf('*', 0);
		if(posicion1!=-1){
			posicion1++;
			var posicion2= direccion.indexOf('*', posicion1);
			var cadena= direccion.substr(posicion1, posicion2-posicion1);

			document.getElementById("pyr3_origen_street1").value= cadena;

			//$('pyr3_origen_street').value= cadena;
		}
		//no hay comillas, asi que pongo toda la cadena
		else {
			//$('pyr3_origen_street').value= direccion;
			document.getElementById("pyr3_origen_street1").value= direccion;
		}
			
		findCorner1('pyr3_origen');
	}	
}


function vueltaAEstadoAnterior(){
    if (cambiado==1){       
        switch (document.getElementById("estadoAnterior").value){
            case "dragme":
                toDrag();
                break;
            case "nodragme":
                toShape();
                break;
            case "zoom":
                toZoomLess();
                break;      
        }
        cambiado=0;
    }
}

function ocultaLabel(){
    var cabecera= document.getElementById("cap_etiqueta");
	var etiqueta= document.getElementById("etiqueta");
    
    cabecera.style.display="none";
    etiqueta.style.visibility="hidden";
    etiqueta.style.overflow='visible';
    labelAbierto=0; 
    vueltaAEstadoAnterior();
    
    ocultarMarco();
}

function ocultarMarco(){
	
	$("marco").style.display="none";
	
    //cerramos el label apra poder mostrar los divs
    labelAbierto=0;
}

function ocultaLabelSiNoFijo(){
    if(labelAbierto==0){
    	var etiqueta;
    	etiqueta=document.getElementById("etiqueta");
    	etiqueta.style.visibility="hidden";
    	labelAbierto=0; 
    	vueltaAEstadoAnterior();
    }
}

