// JavaScript Document
var campoentrada = "fecha_entrada";
var camposalida = "fecha_salida";

function cambiafecha(valorfecha){
	tamano=(valorfecha.length);
	if (tamano==6){
		dia=valorfecha.substring(0,2);
		mes=valorfecha.substring(2,4);
		ano=valorfecha.substring(4,6);
		final=dia + "/" + mes + "/20" + ano;
	}
	else {
		if (tamano==0) {
			final="";
		}
		else {
			final=valorfecha;
		}
	}
	return final;
}

function getFecha(fecha){
		var aux = fecha.split("/");
		var dia = aux[0];
		var mes = aux[1]-1;
		var anio = aux[2];
		return new Date(anio,mes,dia);
}

function addDias(fecha,numdias){
		return new Date(fecha.getTime()+(numdias*24*3600*1000));
}

function fechaToString(fecha){
	if(fecha.getDate()<10){
		dia = "0"+fecha.getDate();
	}else{
		dia = fecha.getDate();
	}
	if((fecha.getMonth()+1)<10){
		mes = "0"+(fecha.getMonth()+1);
	}else{
		mes = (fecha.getMonth()+1);
	}
	
	return dia+"/"+mes+"/"+fecha.getFullYear();
}

function compruebaFecha(){
	fecha_inicial = document.getElementById(campoentrada).value;
	fecha_final = document.getElementById(camposalida).value;
	numero_noches = (-1)*document.getElementById("noches").value;
	
	hoy = new Date();

	var fecha2 = addDias(getFecha(fecha_final),numero_noches).getTime();
	var fecha1 = getFecha(fecha_final).getTime();
	var fechahoy = hoy.getTime();
	
	if(fecha_inicial!=""){
		if(fecha2<=fechahoy){
			document.getElementById(campoentrada).value = fechaToString(hoy);
			 num_noches_nuevo = parseInt((fecha1-fechahoy)/(24*3600*1000));
			 document.getElementById('noches').value = num_noches_nuevo+1;
		} else {
			document.getElementById(campoentrada).value = fechaToString(addDias(getFecha(fecha_final),numero_noches));
		}
	}
	return true;
}

function compruebaFecha2(){
	fecha_inicial = document.getElementById(campoentrada).value;
	fecha_final = document.getElementById(camposalida).value;
	numero_noches = document.getElementById("noches").value;	
	
	var fechai = getFecha(fecha_inicial).getTime();
	var fechaf = getFecha(fecha_final).getTime();
	
	if (fecha_inicial!=''){
		// miramos si la fecha final es mayor que la inicial
		// si es así, ponemos la fecha de salida sumando a la de entrada el número de noches.
		// si no, cambiamos el número de noches.
		if (fechaf<fechai){
			alert("La fecha de salida no puede ser menor que la de entrada.");
			document.getElementById(camposalida).value = fechaToString(addDias(getFecha(fecha_inicial),numero_noches));
		} else {
			num_noches_nuevo = parseInt((fechaf-fechai)/(24*3600*1000));
			document.getElementById('noches').value = num_noches_nuevo;
		}
	}
	return true;
}

function ponFechaSalida(){
	fecha_final = document.getElementById(camposalida).value;
	fecha_inicial = document.getElementById(campoentrada).value;
	numero_noches = document.getElementById("noches").value;
	
	var fecha2 = getFecha(fecha_inicial).getTime();
	var fecha1 = addDias(getFecha(fecha_final),numero_noches).getTime();
	
	if(fecha_final!=""){
		 document.getElementById(camposalida).value = fechaToString(addDias(getFecha(fecha_inicial),numero_noches));
	}
	return true;
}

function InicializaCalendarios(){
	<!-- Set Range of allowed calendar dates -->
	var today = new Date();
	var currentYear = today.getFullYear();
	<!-- EOF range of calendar dates -->
	
	<!-- Refresh Wishlist Form -->
	/*function cal_refresh() {
	document.my_form.action.value = 'refresh';
	document.my_form.submit();
	return true;
	}*/
	<!-- EOF Refresh My Form -->
		if(document.getElementById(campoentrada)){
			Calendar.setup(
					{
						inputField          :   campoentrada,
						button              :   "activacalendarioentrada",
						range               :   [d.getFullYear(), d.getFullYear()+1],
						onUpdate            :   ponFechaSalida,
						ifFormat            :   "%d/%m/%Y",
						electric            :   false,
						firstDay            :   1,
						dateStatusFunc      :   deshabilitar_fecha,
						weekNumbers         :   false
					}
			);
		}
	
		if(document.getElementById(camposalida)){
			 Calendar.setup(
					{
						inputField          :   camposalida,
						button              :   "activacalendariosalida",
						range               :   [d.getFullYear(), d.getFullYear()+1],
						onUpdate            :   compruebaFecha2,
						ifFormat            :   "%d/%m/%Y",
						electric            :   false,
						firstDay            :   1,
						dateStatusFunc      :   deshabilitar_fecha,
						weekNumbers         :   false
					}
			);
		}
	}
