/*
 * @(#)/js/functions.jsp   1.000 11/11/2004
 *
 * <A HREF="http://www.beasys.es">BEA Systems España</A>
 * para el Boletín Hidrológico del <A HREF="http://www.mma.es">Ministerio de Medio Ambiente</A> español.
 * Todos los derechos reservados, según los términos expresados en el contrato.
 * 
 * @creation date      11/11/2004
 * @last modification  11/11/2004
 * @author             Rubén Barbastro Plou
 * @version            1.000, 11/11/2004
 * @since              BH 1.0.0
 * @description: 
 * 
 *   Javascript con funciones necesarias para la aplicación 
 */


/*
* Función para la validación de fechas en un formato concreto (DD/MM/AAAA)
*
*
*/

function validar_fecha(caja)
{ 
   if (caja)
   {  
      var borrar = caja;
      if ((caja.substr(2,1) == "/") && (caja.substr(5,1) == "/") || (caja.substr(2,1) == "/") && (caja.substr(4,1) == "/") || (caja.substr(1,1) == "/") && (caja.substr(4,1) == "/") || (caja.substr(1,1) == "/") && (caja.substr(3,1) == "/"))
      {      
      	 
      	 slash_1=caja.indexOf("/");
      	 slash_2=caja.lastIndexOf("/");
      	 
         for (i=0; i<caja.length; i++)
	     {	
            if (((caja.substr(i,1)<"0") || (caja.substr(i,1)>"9")) && (i != slash_1) && (i != slash_2))
			{
               borrar = "";
               break;  
			}  
         }
         //alert("borrar*"+ borrar +"*")
	     if (borrar)
	     { 
	        a = caja.substr(slash_2+1,4);
	        	//alert("a->" + a);
		    m = caja.substr(slash_1+1,slash_2-slash_1-1);
		    	//alert("m->" + m);
		    d = caja.substr(0,slash_1);
		    	//alert("d->" + d);
		    
		    
		    if((a < 1900) || (a > 2100) || (m < 1) || (m > 12) || (d < 1) || (d > 31))
		       borrar = "";
		    else
		    {
		       if((a%4 != 0) && (m == 2) && (d > 28))	   
		          borrar = ""; // Año no bisiesto y es febrero y el dia es mayor a 28
			   else	
			   {
		          if ((((m == 4) || (m == 6) || (m == 9) || (m==11)) && (d>30)) || ((m==2) && (d>29)))
			         borrar = "";	      				  	 
			   }  // else
		    } // fin else
         } // if (error)
      } // if ((caja.substr(2,1) == "/") && (caja.substr(5,1) == "/"))			    			
	  else
	     borrar = "";
	  if (borrar == ""){
	     alert(errFechaIncorrecta);
	     return false;
	  }else{
	  	 return true;
	  }
   } //end  if (caja)   
} // FUNCION




function traduccionBH(pais){
	direccion=document.location.href;
	direccion=direccion.replace("screen_language=&","screen_language=es&");
	posicionParametros=direccion.indexOf("?");
	posicionScreenLanguage=direccion.indexOf("screen_language=");
	
	if (posicionParametros==-1){ //No tiene parametros concateno detrás el idioma elegido;
		window.open(direccion+"?screen_language="+pais,'_top')
	}else if(posicionParametros==direccion.length-1){ //Si ? es el último símbolo
		window.open(direccion+"screen_language="+pais,'_top')
	}else if(posicionScreenLanguage==-1){ //Si No existe el parámetro screen_language=
		window.open(direccion+"&screen_language="+pais,'_top')
	}else{
		posicion=direccion.indexOf("screen_language=");
		posicion=posicion+"screen_language=".length;
		var paisViejo=direccion.substring(posicion, posicion+2);
		//Con los 2 primeros caracteres ya se cual es el pais Viejo.
		auxPaises="es";
		if (paisViejo=="es")
			auxPaises="es";
		else if (paisViejo=="fr")
			auxPaises="fr";
		else if (paisViejo=="ca")
			auxPaises="cat";
		else if (paisViejo=="eu")
			auxPaises="eus";
		else if (paisViejo=="va")
			auxPaises="val";
		else if (paisViejo=="ga")
			auxPaises="gal";
		else if (paisViejo=="en")
			auxPaises="en";
		else
			auxPaises="es";
		
		paisViejo=auxPaises;
		
		var raiz=direccion.substring(0, posicion) + pais 
		carpeta =new Array
		carpeta = ['es','fr','cat','eus','val','gal','en'] 
		nuevaDireccionDos="" + (direccion.substring(0, posicion) + pais + direccion.substring((posicion + paisViejo.length), direccion.length));
		nuevaDireccion="" + (direccion.substring(0, (posicion-1))  +  direccion.substring((posicion + paisViejo.length), direccion.length));
		nuevaDireccionTres="" + (direccion.substring(0, posicion) + pais + direccion.substring(posicion , direccion.length));
		nuevaDireccionCuatro="" + (direccion.substring(0, posicion) + pais+ direccion.substring(posicion , direccion.length));
		for(j=0; j<=6; j++){
			if(paisViejo==carpeta[j]){
				var esp = 'no'
				if(pais!=paisViejo && pais!=''){
					window.open(nuevaDireccionDos,'_top')
				}
				if(pais!=paisViejo && pais==''){
					window.open(nuevaDireccion,'_top')
				}
			}
		}
		if(esp!='no' && pais!=''){
			window.open(nuevaDireccionTres,'_top')
		}
		if(esp!='no' && pais==''){
			window.open(nuevaDireccionCuatro,'_top')
		}
	}//end if
	
}//end traduccionBH
