Array.prototype.in_array = function(p_val) { for(var i = 0, l = this.length; i < l; i++) { if(this[i] == p_val) { return true; } } return false; } function muestra_ninos(indiceHabitacion){ var indiceOcupacion = document.getElementById('ocupacion_'+indiceHabitacion).value; var sinNinos = new Array('1', '5', '8', '10'); var unNino = new Array('2', '6', '9'); var dosNinos = new Array('3', '7'); var tresNinos = new Array('4'); if(sinNinos.in_array(indiceOcupacion)){ xDisplay('txtninogeneral', 'none') xDisplay('nino'+indiceHabitacion+'1', 'none') xDisplay('nino'+indiceHabitacion+'2', 'none') xDisplay('nino'+indiceHabitacion+'3', 'none') } if(unNino.in_array(indiceOcupacion)){ xDisplay('txtninogeneral', 'block') xDisplay('nino'+indiceHabitacion+'1', 'block') xDisplay('nino'+indiceHabitacion+'2', 'none') xDisplay('nino'+indiceHabitacion+'3', 'none') } if(dosNinos.in_array(indiceOcupacion)){ xDisplay('txtninogeneral', 'block') xDisplay('nino'+indiceHabitacion+'1', 'block') xDisplay('nino'+indiceHabitacion+'2', 'block') xDisplay('nino'+indiceHabitacion+'3', 'none') } if(tresNinos.in_array(indiceOcupacion)){ xDisplay('txtninogeneral', 'block') xDisplay('nino'+indiceHabitacion+'1', 'block') xDisplay('nino'+indiceHabitacion+'2', 'block') xDisplay('nino'+indiceHabitacion+'3', 'block') } } function muestra_personas() { var numeroHabitaciones = formulariohotel.habitaciones.value; var estilo; for(i = 1; i<= 5;i++){ if(i <= numeroHabitaciones) { estilo = 'block'; muestra_ninos(i); } else { estilo = 'none'; } xDisplay('person'+i, estilo); xDisplay('person'+i+i, estilo); xDisplay('person'+i+i+i, estilo); xDisplay('person'+i+i+i+i, estilo); xDisplay('person'+i+i+i+i+i, estilo); } } function hilight( obj ) { if (!document.layers) {obj.style.background = '#00CCFF'; return true;} } function fade( obj ) { if (!document.layers) {obj.style.background = '#FFFFFF'; return true;} } function quitarcero(valor) { valor.value=''; } function realizar_busqueda(fecha_dia,fecha_mes,fecha_ano,fecha_entrada,fecha_salida,dias_entre_fechas,completo) { bien='1'; texto =''; var anoentrada,mesentrada,diaentrada,anosalida,messalida,diasalida; diaentrada = fecha_entrada.substring(0,2); mesentrada = fecha_entrada.substring(3,5); anoentrada = fecha_entrada.substring(6,10); diasalida = fecha_salida.substring(0,2); messalida = fecha_salida.substring(3,5); anosalida = fecha_salida.substring(6,10); formulariohotel.entradadia.value = diaentrada; formulariohotel.entradames.value = mesentrada; formulariohotel.entradaano.value = anoentrada; formulariohotel.salidadia.value = diasalida; formulariohotel.salidames.value = messalida; formulariohotel.salidaano.value = anosalida; //if (formulariohotel.solo_disponibles.checked == true) if (true) { dias_entre_fechas = 1; if (dias_entre_fechas == '') { alert("Debe seleccionar la fecha de llegada y de salida."); formulariohotel.fecha_entrada.focus(); bien='0'; return; } if (dias_entre_fechas == 0) { alert("Las fechas de la reserva no pueden ser iguales."); formulariohotel.fecha_salida.focus(); bien='0'; return; } if ((diaentrada != 'dd') || (diasalida != 'dd')) { if (dias_entre_fechas == '') { alert("Debe seleccionar la fecha de llegada y de salida."); formulariohotel.fecha_entrada.focus(); bien='0'; return; } if (dias_entre_fechas == 0) { alert("Las fechas de la reserva no pueden ser iguales."); formulariohotel.fecha_salida.focus(); bien='0'; return; } today = new Date(); llegada = new Date(anoentrada,mesentrada-1,diaentrada); salida = new Date(anosalida,messalida-1,diasalida); hoy = new Date(fecha_ano,fecha_mes-1,fecha_dia); fecha_actual_correcta = ((llegada.getTime() - hoy.getTime()) / 1000 / 60 / 60 / 24); fecha_actual_correcta=Math.round(fecha_actual_correcta); fecha_correcta = ((salida.getTime()- llegada.getTime()) / 1000 / 60 / 60 / 24); fecha_correcta=Math.round(fecha_correcta); menos_de_seis_meses = ((llegada.getTime() - hoy.getTime()) / 1000 / 60 / 60 / 24); if (menos_de_seis_meses > 700) { texto ="No se puede efectuar una reserva con 23 meses de antelación.\\n"; texto = texto + "\t Fecha de llegada: "+diaentrada+"/"+mesentrada+"/"+anoentrada+"\\n"; texto = texto + "\t Fecha actual: "+fecha_dia+"/"+fecha_mes+"/"+fecha_ano+"\\n"; alert(texto); return; } if(fecha_actual_correcta < '0') { alert("La fecha de inicio de la reserva no puede ser anterior a la fecha actual"); return; } if(fecha_correcta >='45') { alert("La reserva no puede superar los 45 dias."); return; } if(fecha_correcta == '0') { alert("Las fechas de la reserva no pueden ser iguales"); return; } if(fecha_correcta < '1') { alert("La fecha introducida en la reserva no es correcta"); bien='0'; return; } } } if(completo) { //if(formulariohotel.location_id.value == '' && formulariohotel.hotelName.value == ''){ if(formulariohotel.location_id.value == ''){ alert("Ha de selecionar una localidad o zona para realizar la búsqueda o bien introducir el nombre de un hotel."); bien='0'; return; } } if(bien=='1') { if(document.getElementById('cargando')){ /* Caso en el que tiene pantalla de carga, mostramos y ocultamos el boton*/ /*clearTimeout(headerTimeout);*/ document.getElementById('botonBuscar').style.display='none'; document.getElementById('cargando').style.display='block'; } formulariohotel.submit(); } } function cambiar_color_over(celda){ auxcelda = document.getElementById(celda); auxcelda.className="estilomenubuscador_on" } function cambiar_color_out(celda){ auxcelda = document.getElementById(celda); auxcelda.className="estilomenubuscador"; } function validatePaqueteIdaVueltaForm() { var idsOcupaciones = ['cantidadSenior', 'cantidadAdulto', 'cantidadNino', 'cantidadBebe']; var ocupantes = 0; idsOcupaciones.each(function (s) { var el = document.getElementById(s); if (el != null) { ocupantes += parseInt(document.getElementById(s).value); } }); var selectFecha = document.getElementById('fecha'); if (selectFecha && ocupantes > 0) { document.getElementById('bookingForm').submit(); } else { if (!selectFecha) { alert('No hay disponibilidad para este paquete'); } else { alert('Ha de seleccionar la ocupación para realizar la búsqueda.'); } } } //variables de inicializacion de los calendarios //var nDays = 181; //var nDays = 335; var nDays = 700; var periodoHours = 0; var hora_actual = '-1'; var deE = ""; var swChangeDate = 0; var qdiferencia = -165; var booking = true; var obj_d_salida, obj_m_salida, obj_d_regreso, obj_m_regreso;