var AVISO_ASIENTO_BEBE_TREN = false; var AVISO_ASIENTO_BEBES_ADULTOS = false; //Establecemos la caducidad de la cookie de la oferta seleccionada document.cookie = "IDOfertaSel=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/"; function getNumeroMaximoNoches(){ var numeroMaximoNoches = 31; switch(TIPO_CABECERA_AGENCIA){ case "Vuelos": numeroMaximoNoches = 365; break; } return numeroMaximoNoches; } //Comprobamos los datos y lanzamos la dispo function validarFormBusqueda() { // Borramos la cookie de oferta document.cookie="IDOfertaSel=;"; //comprobamos que se halla seleccionado un destino if( $( "#txtDestino" ).length && (!$( "#txtDestino" ).val() || $( "#txtDestino" ).val()=="") ){ alertPopUp("Deve introduzir o destino"); $('#txtDestino').focus(); return false; } //Comprobamos que los días no superen los 31. FRON-5336 DaysOfStay=getDaysOfStay($("#datetimepicker1").val(),$("#datetimepicker2").val()); if (DaysOfStay > getNumeroMaximoNoches()) { alertPopUp("Atención: El número máximo de noches es: 31"); return false; } //Comprobamos que el número máxino de personas seleccionado no supere los 19 if( document.getElementById('H') ){ var totalOcupacion=0; for(i=1;i<=document.getElementById('H').value;i++){ var personasSelec=document.getElementById('O'+i).value; var adultos=parseInt(personasSelec.substr(0, 1)); var ninos=parseInt(personasSelec.substr(2, 1)); totalOcupacion+=(adultos+ninos); } if (totalOcupacion>19){ alertPopUp("O número máximo de pessoas permitido é 19"); return false; } } //Comprobamos para vuelo y vuelo + hotel que el número máximo de pasajeros no sea superior a 9 if (TIPO_CABECERA_AGENCIA=="Vuelos" || TIPO_CABECERA_AGENCIA=="Vuelo+Hotel"){ if (TIPO_CABECERA_AGENCIA=="Vuelos"){ var adultosV=parseInt($('#adultos').val()); var ninosV=parseInt($('#menores').val()); if ((adultosV+ninosV)>9){ alertPopUp("O número máximo de pessoas permitido é 9"); return false; } }else{ if (totalOcupacion>9){ alertPopUp("O número máximo de pessoas permitido é 9"); return false; } } } // Comprobamos que se ha seleccionado una estación de tren correcta (si existe el input) if( $('#txtTren_id').length && $('#txtTren_id').val()=="" ){ if( $('#txtTren').val()=='' )alertPopUp("Debes introducir la estación de origen"); else alertPopUp( $('#txtTren').val() + " não tem estação de comboio. Por favor faça outra pesquisa."); $('#txtTren').focus(); return false; } // Comprobamos que se ha seleccionado el aeropuerto de origen (si existe el input) if( $('#aer_origen_name').length && $('#aer_origen_name').val()=="" ){ if( $('#aer_origen_name').val()=='' )alertPopUp("Deve indicar o aeroporto de origem"); else alertPopUp( $('#aer_origen_name').val() +" no tiene aeropuerto. Seleccione de nuevo la búsqueda"); $('#aer_origen_name').focus(); return false; } if( $('#aer_origen_value').length && $('#aer_origen_value').val()=='' ){ alertPopUp("Deve indicar o aeroporto de origem"); $('#aer_origen_value').val(''); $('#aer_origen_value').focus(); return false; } if( $('#aer_origen_value').length && $('#aer_destino_value').length && $('#aer_origen_value').val() && $('#aer_destino_value').val()!='' && $('#aer_origen_value').val()==$('#aer_destino_value').val() ){ alertPopUp("El aeropuerto de origen tiene que ser distinto del de destino"); $('#aer_destino_value').val(''); $('#aer_destino_value').focus(); return false; } // Comprobamos que se ha seleccionado el aeropuerto de destino (si existe el input y esta visible (opcional en Vuelo+Hotel)) if( $('#aer_destino_name:visible').length && $('#aer_destino_name:visible').val()=="" ){ if( $('#aer_destino_name').val()=='' )alertPopUp("Debes introducir el aeropuerto de destino"); else alertPopUp($('#aer_destino_name').val() +" no tiene aeropuerto. Seleccione de nuevo la búsqueda"); $('#aer_destino_name').focus(); return false; } if( $('#aer_destino_name:visible').length && $('#aer_destino_value').val()=="" ){ alertPopUp("Debes introducir el aeropuerto de destino"); $('#aer_destino_name').val(''); $('#aer_destino_name').focus(); return false; } // Comprobamos que se ha seleccionado el aeropuerto de origen (si existe el input) if( $('#tren_origen_name').length && ($('#tren_origen_name').val()=="" || $('#tren_origen_value').val()=='') ){ if( $('#tren_origen_name').val()=='' )alertPopUp("Debes introducir la estación de origen"); $('#tren_origen_name').focus(); return false; } if( $('#tren_destino_name').length && ($('#tren_destino_name').val()=="" || $('#tren_destino_value').val()=='') ){ if( $('#tren_destino_name').val()=='' )alertPopUp("Debes introducir la estación de destino"); $('#tren_destino_name').focus(); return false; } //Comprobamos que las fechas son correctas compruebaFechasCorrectas(); //Rellenamos los hidden de fechas con los valores y campos validos para el xml for (i=1;i<=2;i++){ var campoFecha=eval("document.f.datetimepicker"+i+".value"); if(campoFecha){ var DDMMAAAA=campoFecha.split("/"); var dia=parseInt(DDMMAAAA[0],10); var mes=parseInt(DDMMAAAA[1],10); var ano=parseInt(DDMMAAAA[2],10); $('#D'+i).val(dia); $('#MA'+i).val(mes+'_'+ano); } } var habitaciones=$("#H").val(); if (habitaciones=="") { alertPopUp("É preciso selecionar pelo menos um quarto"); return false; } //Comprobamos que si hay niños se rellenen todos los campos de estos if(TIPO_CABECERA_AGENCIA!='Trenes'){ for(i=1;i<=numeroMaxHab;i++){ for (j=1;j<=3;j++){ if ($('#edadNino'+i+'_'+j).is(':visible')){ if ($('#edadNino'+i+'_'+j).val()==""){ alertPopUp("Deve preencher todas as idades das crianças"); return false; } if (parseInt($('#edadNino'+i+'_'+j).val())>=edadMaxNinos){ alertPopUp("As idades dos menores devem ser inferiores a 18 anos."); return false; } } } } } // Comprobamos la edad de los niños para "sólo tren" y "sólo vuelo" if(TIPO_CABECERA_AGENCIA!='Trenes'){ if( $('#menores').length && parseInt($('#menores').val(),10)>0 ){ var nNinos = parseInt($('#menores').val(),10); var edadCorrecta = true; for(var iNino=1; iNino<=nNinos; iNino++){ if( $('#edadNino'+iNino).length ){ var edadNino = parseInt($('#edadNino'+iNino).val(),10); if( $('#edadNino'+iNino).val()=="" ){ alertPopUp("Deve preencher todas as idades das crianças"); edadCorrecta = false; } switch(TIPO_CABECERA_AGENCIA){ case "Trenes": if( edadNino<4 || edadNino>13 ){ alertPopUp("As idades dos menores têm que estar entre os 4 e os 13 anos."); edadCorrecta = false; } break; case "Vuelos": if( edadNino<2 || edadNino>12 ){ alertPopUp("As idades dos menores têm que estar entre os 2 e os 12 anos."); edadCorrecta = false; } break; } } } if( !edadCorrecta ){ $('#edadNino'+iNino).focus(); return false; } } } if( $('#tarjetaDorada').length ){ var tarjetasDoradas = parseInt($('#tarjetaDorada').val() ,10); var adultos = parseInt($('#adultos').val(), 10); if( tarjetasDoradas>adultos ){ alertPopUp("No puede haber más tarjetas doradas que pasajeros adultos."); return false; } } //Comprobación de estación de tren valida var estacionOrigen=$("#txtTren_id").val(); var zonaDestino =$("#list_id").val(); if( !zonaDestino )zonaDestino=$("#txtDestino_id").val(); if( $('#estTren_destino_value').val()!='' ){ zonaDestino=$('#estTren_destino_value').val(); if( estacionOrigen!=zonaDestino ){ $('#frmBuscar').submit(); return true; } } // Obtenemos los tipos de pasajeros var nHab = parseInt($('#H').val(), 10); var nAdultos = 0; var nNinos = 0; var nBebes = 0; for(var iHab=1; iHab<=nHab; iHab++){ var ocupacionesHab = $('#O'+ iHab +':visible'); $.each(ocupacionesHab, function(iEl, el){ var ocupacion = $(el).val(); var vOcupacion = ocupacion.split('A'); nAdultos += parseInt(vOcupacion[0],10); }); var inputEdades = $('input[id*=edadNino'+ iHab +']:visible'); $.each(inputEdades, function(iEl, el){ if( TIPO_CABECERA_AGENCIA=='Vuelo+Hotel' ){ if( $(el).val()<2 )nBebes++; else nNinos++; }else if( TIPO_CABECERA_AGENCIA=='Tren+Hotel' ){ if( $(el).val()<4 )nBebes++; else nNinos++; } }); } // Los vuelos sólo permiten un bebe por adulto if( TIPO_CABECERA_AGENCIA=='Vuelo+Hotel' ){ if( nAdultos < nBebes ){ var html = "