function trim(cad)
  {
   var res;
   var i;
   var IndiceInferior;
   var IndiceSuperior;
   
   res="";
   IndiceInferior=0;
   IndiceSuperior=0;
   
   if (cad.length==0) // cadena vacía
       return res;
   
   i=0;
   while (i<cad.length && cad.charAt(i)==" ")
      i++;
      
   IndiceInferior=i;
   
   if (i==cad.length) // cadena con solo espacios
       return res;
   
   i=cad.length-1;
   while (i>IndiceInferior && cad.charAt(i)==" ")
       i--;
   
   IndiceSuperior=i+1;

   return cad.substring(IndiceInferior, IndiceSuperior);      
}



function comprobarLogin(){
	//Comprobamos el nombre de usuario
	var form=document.getElementById("frmLogin");
	form.usuario.value=trim(form.usuario.value);
	form.clave.value=trim(form.clave.value);
	
	if (form.usuario.value==""){
		alert (alert_usuario);
		form.usuario.focus();
		return false;
	}
	
	if (form.usuario.value==""){
		alert (alert_clave);
		form.clave.focus();
		return false;
	}
	
	form.submit();
}


function comprobarAltaNewsletterHome(){
	var form=document.frmNewsletterHome;
	
	form.email_newsletter.value=trim(form.email_newsletter.value);
	if (form.email_newsletter.value==""){
		alert (alert_newsletter);
		form.email_newsletter.focus();
		return false;
	}
	form.submit();
}


function comprobarAltaNewsletter(){
	var form=document.frmNewsletter;
	
	if (validate(form)){
		if (!form.condiciones.checked){
			alert (mensaje_condiciones);
			form.condiciones.focus();
			return false;
		}
		form.submit();
	}
}

function consultar_reserva(form){
	//Componemos la URL:
	if (validate(form)){
		//http://www.bookin1.com/html/new_stage2.jsp?
		//hotelId=211&hotelCode=ALA&customerRef=&colourScheme=Alanda&search=&src=hotelier&ref=hotelier&ad=7&am=8:2009
		//&noNights=2&noAdults=2&noChildren=1&noInfants=1&noRooms=1
		
		//Si estamos en formato español, lo pasamos a formato inglés:
		if (form.lang.value=='es'){
			Fini=cambiarFormatoFecha(form.entrada.value);
			Ffin=cambiarFormatoFecha(form.salida.value);
		}else{
			Fini=form.entrada.value;
			Ffin=form.salida.value;
		}
		
		//tenemos que calcular la diferencia en días de las fechas:
		var dias=restar_fechas(Ffin,Fini);
		if (dias<=1) $dias=2;
		
		//Calculo el día inicial para pasarlos como parámetro
		var regex = /(\d+)-(\d+)-(\d+)/;
		var aFini = Fini.replace(regex,"$1");
		var mFini = Fini.replace(regex,"$2");
		var dFini = Fini.replace(regex,"$3");
		
		var url="http://www.bookin1.com/html/new_stage2.jsp?"+
					"hotelId=211"+
					"&hotelCode=ALA"+
					"&customerRef="+
					"&colourScheme=Alanda"+
					"&search="+
					"&src=hotelier"+
					"&ref=hotelier"+
					"&ad="+ dFini + //día del mes
					"&am="+mFini+":"+aFini+ //mes y año
					"&noNights="+dias+ //Número mínimo de noches
					"&noAdults="+form.adultos.value+
					"&noChildren="+form.ninos.value+
					"&noInfants="+
					"&noRooms="+form.habitaciones.value+
					"&userLang="+form.lang.value;
		//alert(url);
		window.open(url,"reserva");
	}
}

function cambiarFormatoFecha(fecha){
	//Dada una fecha en formato dd-mm-yyyy, devuelve una cadena en formato yyyy-mm-dd
	//Calculo el día inicial para pasarlos como parámetro
	var regex = /(\d+)-(\d+)-(\d+)/;
	var dia = fecha.replace(regex,"$1");
	var mes = fecha.replace(regex,"$2");
	var anio = fecha.replace(regex,"$3");
	return anio + "-" + mes + "-" + dia;
}

function restar_fechas(Fini,Ffin){

	// esta es la expresion regular
	var regex = /(\d+)-(\d+)-(\d+)/;
	
	// la "fecha inicial"
	var aFini = Fini.replace(regex,"$1");
	var mFini = Fini.replace(regex,"$2");
	var dFini = Fini.replace(regex,"$3");
	
	// la "fecha final"
	var aFfin = Ffin.replace(regex,"$1");
	var mFfin = Ffin.replace(regex,"$2");
	var dFfin = Ffin.replace(regex,"$3");
	
	// Creación de los objetos DATE
	var oFini = new Date(aFini,mFini,dFini);
	var oFfin = new Date(aFfin,mFfin,dFfin);
	
	//las restamos y obtenemos el resultado en milisegundos
	return (oFini - oFfin)/86400000;
}
