﻿var dtoBusquedaVuelos;var listaPuntosMapa;var sentidoIda=1;var sentidoVuelta=2var sentidoIdaVuelta=3;var RespuestaListadoVuelos;var msgErrorSolicitud="Se ha producido un error en la solicitud de vuelos";var msgVuelosNoDisponibles="No se han encontrado vuelos disponibles para este trayecto";var urlListadoVuelos="/RecuperaListadoVuelos.ashx";var capaEsperaClass=".Espera";var classListadoVuelos="#contenedoraListado";var paginaActual=1;var regXPagina=8;var capaPaginadorVuelos="#paginadorVuelos";var numeroPropuestaTotales;var paginasTotales;var ordenPrecioAscendente=true;var urlServidor;var urlServidorMultimedia;var idHtmlPropuestaVuelo=".htmlPropuestaVuelo";var idHtmlContenedoraListado="#contenedoraListado";var idHtmlTablaVuelo=".htmlTablaVuelo";var idCapaListadoVuelos="#capaListadoVuelos";var idHtmlPrecioVuelo=".htmlPrecioVuelo";var idHtmlEscalas=".htmlEscalas";var idHtmlPropuesta=".htmlPropuesta";var idHtmlPropuestaVuelo=".htmlPropuestaVuelo";var idHtmlFilaVuelo=".htmlFilaVuelo";var idFiltroVuelos="#filtroVuelos";var idTablaOperadores="#tbOperadores";var idHtmlResumen=".resumen";var PlantillaHtmlEscalas;var PlantillaHtmlTablaVuelo;var PlantillaHtmlPrecioVuelo;var PlantillaHtmlPropuesta;var PlantillaHtmlPropuestaVuelo;var PlantillaHtmlFilaVuelo;var PlantillaHtmlResumen;var temPropuesta;var temPropuestaVuelo;var nodoVuelo;var temPrecioVuelo;var tempResumenVuelo;var urlReserva;var textoMasDetalles="Más detalles";var textoMasDetalles="Ocultar";var textoPasajeros;var imgBlank=new Image();var imgEscalas=new Image();var imgAvionIda=new Image();var imgAvionVuelta=new Image();var imgIda=new Image();var imgVuelta=new Image();var imgRdbSeleccionado=new Image();var imgRdbDesseleccionado=new Image();var imgInformacion=new Image();var imgFlecha=new Image();var numeroGruposRdb=0;var companiaOperadora;var iataOperador;var sentido;var numeroInfos=0;var nodFilaEscala;var imgOperador;var numeroVuelos=0;var SliderIda;var SliderVuelta;var horaIdaMinimo=0;var horaIdaMaximo=24;var horaVueltaMinimo=0;var horaVueltaMaximo=24;var PeticionFiltrado;var RegistrosFiltrados;var tipoPropuesta;var PropuestaSinMezclar=1;var PropuestaMezclada=2;var inputVueloIdaSeleccionado;var inputVueloVueltaSeleccionado;var inputTipoPropuesta;var ClassInputHiddenIda=".inputGuidIda";var ClassInputHiddenVuelta=".inputGuidVuelta";var ClassInputHiddenTipoPropuesta=".tipoPropuesta";var PlantillaHtmlInputHiddenIda;var PlantillaHtmlInputHiddenVuelta;var PlantillaHtmlInputHiddenTipoPropuesta;var idBtnEscalas="#btnEscalas";var sinEscalas=false;var numeroEscalasMinimo=2;function InicializaPeticionVuelos(){if(dtoBusquedaVuelos!=null&& dtoBusquedaVuelos.hashBusqueda!=null){SolicitudAjax=$.ajax({url:urlListadoVuelos,type:'POST',data:{idBusqueda:dtoBusquedaVuelos.hashBusqueda},dataType:'json',success:ContinuaPeticionVuelos,error:ErrorPeticionVuelos});}PrecargarImagenes();}function ErrorPeticionVuelos(){AjaxError();}function ContinuaPeticionVuelos(data){if(data.PeticionCorrecta==true){RespuestaListadoVuelos=data;ProcesarPropuestasVuelos();}else{MostrarCapaSinResultados(true);}}function ProcesarPropuestasVuelos(){listaPuntosMapa=RespuestaListadoVuelos.ListaAeropuertos;if(RespuestaListadoVuelos.ListaPropuestaIda!=null&& RespuestaListadoVuelos.ListaPropuestaIda.length>0)$(RespuestaListadoVuelos.ListaPropuestaIda).each(MezclarVuelos);RespuestaListadoVuelos.ListaPropuestaVuelta=null;RespuestaListadoVuelos.ListaPropuestaIda=null;if(RespuestaListadoVuelos.ListaPropuestaIdaVuelta.length>0){RespuestaListadoVuelos.ListaPropuestaIdaVuelta.sort(OrdenarVuelos);$(RespuestaListadoVuelos.ListaPropuestaIdaVuelta).each(function(){this.visible=true;});numeroPropuestaTotales=RespuestaListadoVuelos.ListaPropuestaIdaVuelta.length;BindNumeroPasajeros();BindPlantillas();MostrarFiltroYPestanas();MostrarListado(false);MostrarOperadores();$(capaEsperaClass).fadeOut("fast",function(){$(classListadoVuelos).fadeIn();})}else{MostrarCapaSinResultados(true);}}function MostrarFiltroYPestanas(){$(idFiltroVuelos).show();}function BindNumeroPasajeros(){textoPasajeros=RespuestaListadoVuelos.NumeroPasajeros+" Pasajero";if(RespuestaListadoVuelos.NumeroPasajeros>1)textoPasajeros+="s";}function BindPlantillas(){PlantillaHtmlEscalas=$(idHtmlEscalas).clone(true);PlantillaHtmlFilaVuelo=$(idHtmlFilaVuelo).clone(true);$(idHtmlTablaVuelo+" "+idHtmlFilaVuelo).empty();$(idHtmlTablaVuelo+" "+idHtmlEscalas).empty();PlantillaHtmlTablaVuelo=$(idHtmlTablaVuelo).clone(true);PlantillaHtmlPrecioVuelo=$(idHtmlPrecioVuelo).clone(true);PlantillaHtmlResumen=$(idHtmlResumen).clone(true);$(idHtmlPropuestaVuelo).empty();PlantillaHtmlPropuestaVuelo=$(idHtmlPropuestaVuelo).clone(true);PlantillaHtmlInputHiddenIda=$(ClassInputHiddenIda).clone(true);PlantillaHtmlInputHiddenVuelta=$(ClassInputHiddenVuelta).clone(true);PlantillaHtmlInputHiddenTipoPropuesta=$(ClassInputHiddenTipoPropuesta).clone(true);BorrarContenidoCentral();PlantillaHtmlPropuesta=$(idHtmlPropuesta).clone(true);}function BorrarContenidoCentral(){$(idHtmlPropuesta+" .cen").empty();}function MezclarVuelos(contador){var propuestaIda=this;var precioTotalParcial=propuestaIda.PrecioTotal;var precioFeeParcial=propuestaIda.PrecioFee;var precioBaseParcial=propuestaIda.PrecioBase;var precioTasasParcial=propuestaIda.PrecioTasas;var precioTotalSinEmision=propuestaIda.PrecioTotalSinEmision;var precioGDSParcial=propuestaIda.PrecioGDS;$(RespuestaListadoVuelos.ListaPropuestaVuelta).each(function(contador){var nuevaPropuesta;nuevaPropuesta=$.extend(nuevaPropuesta,propuestaIda);nuevaPropuesta.PrecioTotal=SumaPrecios(precioTotalParcial,this.PrecioTotal);nuevaPropuesta.PrecioBase=SumaPrecios(precioBaseParcial,this.PrecioBase);nuevaPropuesta.PrecioFee=SumaPrecios(precioFeeParcial,this.PrecioFee);nuevaPropuesta.PrecioGDS=SumaPrecios(precioGDSParcial,this.PrecioGDS);nuevaPropuesta.PrecioTasas=SumaPrecios(precioTasasParcial,this.PrecioTasas);nuevaPropuesta.PrecioTotalSinEmision=SumaPrecios(precioTotalSinEmision,this.PrecioTotalSinEmision);nuevaPropuesta.TipoPropuesta=this.TipoPropuesta;nuevaPropuesta.SentidoTrayecto=this.SentidoTrayecto;nuevaPropuesta.ListaVuelosIda=jQuery.map(propuestaIda.ListaVuelosIda,function(n,i){return n;});nuevaPropuesta.ListaVuelosVuelta=jQuery.map(this.ListaVuelosIda,function(n,i){return n;});nuevaPropuesta.IataOperadorVuelta=this.IataOperadorIda;var primeraFechaIda=ParseaFechaANeutro(nuevaPropuesta.ListaVuelosIda[0].fechaLlegada,nuevaPropuesta.ListaVuelosIda[0].horaLlegada)var topArray=nuevaPropuesta.ListaVuelosVuelta.length;for(cont=0;cont<topArray;cont++){var fechaVuelta=ParseaFechaANeutro(nuevaPropuesta.ListaVuelosVuelta[cont].fechaSalida,nuevaPropuesta.ListaVuelosVuelta[cont].horaSalida)if(fechaVuelta<=primeraFechaIda){nuevaPropuesta.ListaVuelosVuelta.splice(cont,1);cont--;topArray--;}}if(nuevaPropuesta.ListaVuelosVuelta.length>0){var ultimaFechaVuelta=ParseaFechaANeutro(nuevaPropuesta.ListaVuelosVuelta[nuevaPropuesta.ListaVuelosVuelta.length-1].fechaSalida,nuevaPropuesta.ListaVuelosVuelta[nuevaPropuesta.ListaVuelosVuelta.length-1].horaSalida)var topArray=nuevaPropuesta.ListaVuelosIda.length;for(cont=0;cont<topArray;cont++){var fechaIda=ParseaFechaANeutro(nuevaPropuesta.ListaVuelosIda[cont].fechaLlegada,nuevaPropuesta.ListaVuelosIda[cont].horaLlegada)if(ultimaFechaVuelta<=fechaIda){nuevaPropuesta.ListaVuelosIda.splice(cont,1);cont--;topArray--;}}}if(nuevaPropuesta.ListaVuelosVuelta.length>0&& nuevaPropuesta.ListaVuelosIda.length>0)RespuestaListadoVuelos.ListaPropuestaIdaVuelta[RespuestaListadoVuelos.ListaPropuestaIdaVuelta.length]=nuevaPropuesta;});}function OrdenarVuelos(vuelo1,vuelo2){if(ordenPrecioAscendente==true){return PrecioToNeutralFormat(vuelo1.PrecioTotalSinEmision)-PrecioToNeutralFormat(vuelo2.PrecioTotalSinEmision);}elsereturn PrecioToNeutralFormat(vuelo2.PrecioTotalSinEmision)-PrecioToNeutralFormat(vuelo1.PrecioTotalSinEmision);}function MostrarListado(ordenar){RenderPaginador();RenderVuelos();}function Dispose(){RegistrosFiltrados=null;}function MostrarOperadores(){var numOperadores=RespuestaListadoVuelos.ListaOperadores.length;var tablaOperadores=$(idTablaOperadores);for(var contador=0;contador<numOperadores;contador++){RespuestaListadoVuelos.ListaOperadores[contador].Activo=true;$(tablaOperadores).append(CrearTrOperador(RespuestaListadoVuelos.ListaOperadores[contador]));}$(tablaOperadores).find("img.chkOperador").each(ActivateChkOperador);$(tablaOperadores).find("a.exclusivo").each(ActivateChkOperadorEsclusivo);$(idFiltroVuelos).find("a.todas").each(ActivateChkOperadorEsclusivo);}function CrearTrOperador(operador){var html="<tr><td class=\"c1\"><img class=\"chkOperador\" rel=\""+operador.Key;html+="\" src=\"/images/radio_bot_selec.gif\" alt=\"-\" title=\"\"></td><td class=\"c2\">"+operador.Value;html+="</td><td class=\"c3\"><a class=\"exclusivo\" href=\"#\" rel=\""+operador.Key+"\" title=\"Sólo esta\"><span>Sólo esta*</span></a></td><tr>";return html;}function RenderPaginador(){paginasTotales=RecuperaPaginasTotales();$(capaPaginadorVuelos).empty();var inicioPaginador=parseInt(paginaActual)-9;if(inicioPaginador<1)inicioPaginador=1;var finPaginador=parseInt(paginaActual)+9;if(finPaginador>paginasTotales)finPaginador=paginasTotalesvar htmlPaginador="<ul>";paginaAnterior=inicioPaginador-1;paginaPosterior=finPaginador+1;if(inicioPaginador>1)htmlPaginador+="<li rel=\""+paginaAnterior+"\">Anteriores</li>";for(var contador=inicioPaginador;contador<=finPaginador;contador++){if(contador==paginaActual)htmlPaginador+="<li class=\"actual\" rel=\""+contador+"\">"+contador+"</li>";elsehtmlPaginador+="<li rel=\""+contador+"\">"+contador+"</li>";}if(finPaginador<paginasTotales)htmlPaginador+="<li rel=\""+paginaPosterior+"\">Siguientes</li>";htmlPaginador+="</ul><p> Pagina: "+paginaActual+" de "+paginasTotales+"</p>";$(capaPaginadorVuelos).append(htmlPaginador);$("#paginadorVuelos ul li").bind("click",CambioPagina);$("#paginadorVuelos ul li").hover(HovePagina,MouseOutPaqina);$("#paginadorVuelos ul li.actual").css("cursor","default");}function RenderVuelos(){IniciarContadores();$(idCapaListadoVuelos).empty();var registroInferior=DevuelveRegInferior();var registroSuperior=DevuelveRegSuperior();var registrosVisibles=-1;var listaVuelos=RespuestaListadoVuelos.ListaPropuestaIdaVuelta.lengthfor(var contador=0;contador<listaVuelos;contador++){var propuesta=RespuestaListadoVuelos.ListaPropuestaIdaVuelta[contador];if(propuesta.visible==true){registrosVisibles++;if(registrosVisibles<registroInferior)continue;AnadirPropuestaVuelo(propuesta,contador);if(registrosVisibles==registroSuperior)break;}}BindSinEscalas();}function AnadirPropuestaVuelo(propuestaVuelo,contador){var precioTotalSinEmision=new Number(PrecioToNeutralFormat(propuestaVuelo.PrecioTotalSinEmision)).toFixed(2);var precioSplit=precioTotalSinEmision.toString().split(".");var precioEntero=precioSplit[0];var precioDecimal=precioSplit[1];iataOperador=propuestaVuelo.IataOperadorIda;companiaOperadora=RecuperaOperador(iataOperador).Value;temPropuesta=PlantillaHtmlPropuesta.clone(true);inputVueloIdaSeleccionado=PlantillaHtmlInputHiddenIda.clone();inputVueloVueltaSeleccionado=PlantillaHtmlInputHiddenVuelta.clone();inputTipoPropuesta=PlantillaHtmlInputHiddenTipoPropuesta.clone();$(inputTipoPropuesta).val(propuestaVuelo.TipoPropuesta);tipoPropuesta=propuestaVuelo.TipoPropuesta;temPropuestaVuelo=$(PlantillaHtmlPropuestaVuelo).clone(true);sentido="Ida";BindCabeceraTablaVuelo();$(propuestaVuelo.ListaVuelosIda).each(AnadirVuelo);numeroGruposRdb++;BindChkButton();$(temPropuestaVuelo).append(nodoVuelo.clone(true));sentido="Vuelta";BindCabeceraTablaVuelo();if(dtoBusquedaVuelos.soloIda==true){$(idCapaListadoVuelos).find(".resumen p.separador").css("margin","2em auto 1em");}else{if(propuestaVuelo.IataOperadorVuelta){iataOperador=propuestaVuelo.IataOperadorVuelta;companiaOperadora=RecuperaOperador(iataOperador).Value;}$(propuestaVuelo.ListaVuelosVuelta).each(AnadirVuelo);numeroGruposRdb++;BindChkButton();}$(temPropuestaVuelo).append(nodoVuelo.clone(true));BindPrecioPropuesta(precioEntero,precioDecimal);BindResumenPropuesta(propuestaVuelo);$(temPropuestaVuelo).append(tempResumenVuelo.clone(true));var capaCentral=$(temPropuesta).find(".cen");$(capaCentral).append(inputVueloIdaSeleccionado);$(capaCentral).append(inputVueloVueltaSeleccionado);$(capaCentral).append(inputTipoPropuesta);$(capaCentral).append(temPropuestaVuelo);$(capaCentral).append(temPrecioVuelo.clone(true));$(idCapaListadoVuelos).append(temPropuesta);}function AnadirVuelo(contador){if(contador==0){BindTipoPropuesta(this);$(nodoVuelo).attr("rel",sentido);}if(this.Activo!=null&& this.Activo==false)return;numeroVuelos++;var nodFilaVuelo=$(PlantillaHtmlFilaVuelo).clone(true);if(parseInt(this.escalas)>1)$(nodFilaVuelo).find(".cel7").append($(imgEscalas).clone(true));else$(nodFilaVuelo).find(".cel7").append(imgBlank);$(nodFilaVuelo).find(".cel3").text(this.fechaSalida);$(nodFilaVuelo).find(".cel4").text(this.aeropuertoSalida);$(nodFilaVuelo).find(".cel6").text(this.aeropuertoLlegada);$(nodFilaVuelo).find(".cel8").text(this.horaSalida+"-"+this.horaLlegada);$(nodFilaVuelo).find(".cel85").text(this.duracion);imgOperador=new Image();imgOperador.src=urlServidorMultimedia+"/images/companias/"+iataOperador+".gif";imgOperador.alt=iataOperador;imgOperador.title=companiaOperadora;$(nodFilaVuelo).find(".cel9").append(imgOperador);$(nodFilaVuelo).find(".cel10").append(iataOperador);$(nodFilaVuelo).attr("rel",this.id);$(nodFilaVuelo).find(".cel11 a").attr("rel",numeroVuelos);$(nodFilaVuelo).find(".cel11 a").bind("click",MostrarEscalas);$(nodoVuelo).append(nodFilaVuelo);$(this.trayectos).each(AnadirEscala);}function AnadirEscala(contador){var alterno1="";var alterno2="";if(contador%2==0)alterno2="morado";elsealterno1="morado";nodFilaEscala=$(PlantillaHtmlEscalas).clone(true);var aeropuertoSalida=RecuperaAeropuerto(this.aS);var aeropuertoLlegada=RecuperaAeropuerto(this.aL);var origen=aeropuertoSalida.nombre;var destino=aeropuertoLlegada.nombre;if(this.tS.length>0)origen+=" - terminal "+this.tS;if(this.tL.length>0)destino+=" - terminal "+this.tL;$(nodFilaEscala).find(".cel1").html("<span class=\""+alterno1+"\">"+origen+" </span>");var imgInformacionNuevo=$(imgInformacion).clone(true);$(imgInformacionNuevo).attr("rel","info"+numeroVuelos);numeroInfos++;if(aeropuertoSalida.descripcion!=null&& aeropuertoSalida.descripcion.length>0){$(nodFilaEscala).find(".cel1").append(CreaImgInformacion());$(nodFilaEscala).find(".cel1").append(CreaTextoInformacion(aeropuertoSalida.descripcion,"izq"));}numeroInfos++;$(nodFilaEscala).find(".cel2").html("<span class=\""+alterno2+"\">"+destino+" </span>");if(aeropuertoLlegada.descripcion!=null&& aeropuertoLlegada.descripcion.length>0){$(nodFilaEscala).find(".cel2").append(CreaImgInformacion());$(nodFilaEscala).find(".cel2").append(CreaTextoInformacion(aeropuertoLlegada.descripcion,"der"));}$(nodFilaEscala).find(".cel3").append(this.fS+"-<span class=\"naranja\">"+this.hS+"</span> ");$(nodFilaEscala).find(".cel3").append($(imgFlecha).clone(true));$(nodFilaEscala).find(".cel3").append(" "+this.fL+"-<span class=\"naranja\">"+this.hL+"</span>");$(nodFilaEscala).find(".cel5").append($(imgOperador).clone(true));$(nodFilaEscala).find(".cel5").append(" "+this.cO);$(nodFilaEscala).find(".cel6").html("<span>Código de vuelo: </span>"+"<span class=\"resaltado\">"+this.nV+"</span>");$(nodFilaEscala).attr("rel",numeroVuelos);$(nodFilaEscala).find("img.masInfo").hover(MostrarInformacion,MostrarInformacion);$(nodoVuelo).append(nodFilaEscala);}function CreaTextoInformacion(informacion,lado){var estilo="masInformacion";if(lado=="der")estilo="masInformacion masInformacion2";return "<p class=\""+estilo+"\" rel=\"info"+numeroInfos+"\">"+informacion+"</p>";}function CreaImgInformacion(){var imgInformacionNuevo=$(imgInformacion).clone(true);$(imgInformacionNuevo).attr("rel","info"+numeroInfos);return imgInformacionNuevo;}function RecuperaAeropuerto(iataCode){var numeroAeropuertos=RespuestaListadoVuelos.ListaAeropuertos.length;for(var contador=0;contador<numeroAeropuertos;contador++){var aeropuerto=RespuestaListadoVuelos.ListaAeropuertos[contador];if(aeropuerto.iataCode==iataCode)return aeropuerto;}}function RecuperaOperador(iataCode){var numeroOperadores=RespuestaListadoVuelos.ListaOperadores.length;for(var contador=0;contador<numeroOperadores;contador++){var operador=RespuestaListadoVuelos.ListaOperadores[contador];if(operador.Key==iataCode)return operador;}}function BindPrecioPropuesta(precioEntero,precioDecimal){temPrecioVuelo=$(PlantillaHtmlPrecioVuelo).clone(true);$(temPrecioVuelo).find("span.total").append(precioEntero+",");$(temPrecioVuelo).find("span.decimal").append(precioDecimal);$(temPrecioVuelo).find("a[title='Reservar']").attr("href",MontaEnlaceBtnReserva());}function BindResumenPropuesta(propuesta){tempResumenVuelo=$(PlantillaHtmlResumen).clone(true);var resumen="(Precio medio del billete: "+retornaPrecioMedio(propuesta.PrecioGDS)+" &euro; + Tasas: "+retornaPrecioMedio(propuesta.PrecioTasas)+" &euro;) x "+textoPasajeros;$(tempResumenVuelo).find(".precio").append(resumen);}function retornaPrecioMedio(precio){var precioMedio=new Number(PrecioToNeutralFormat(precio));return PrecioNeutralToSpanishFormat((precioMedio/ RespuestaListadoVuelos.NumeroPasajeros).toFixed(2));}function BindCabeceraTablaVuelo(){nodoVuelo=$(PlantillaHtmlTablaVuelo).clone(true);if(sentido=="Ida"){$(nodoVuelo).find(".cel1").append(imgAvionIda);$(nodoVuelo).find(".cel2").append(imgIda);}else{$(nodoVuelo).find(".cel1").append(imgAvionVuelta);$(nodoVuelo).find(".cel2").append(imgVuelta);}}function BindSinEscalas(){$(idBtnEscalas).bind("click",ActivarSinEscalas);}function ActivarSinEscalas(){var imgchkEscalas=$(this);if(imgchkEscalas.attr("rel")=="0"){this.src=imgRdbSeleccionado.src;imgchkEscalas.attr("rel","1");}else{this.src=imgRdbDesseleccionado.src;imgchkEscalas.attr("rel","0");}sinEscalas=!sinEscalas;StartFiltrado(true);}function IniciarContadores(){numeroGruposRdb=0;numeroInfos=0;numeroVuelos=0;}function BindChkButton(n){$(nodoVuelo).find(".pointer").each(ActivateChk);}function ActivateChk(n){if(n==0){this.src=imgRdbSeleccionado.src;}elsethis.src=imgRdbDesseleccionado.src;$(this).attr("rel","grupo"+numeroGruposRdb.toString());$(this).bind("click",ClickRdbEvent);}function BindTipoPropuesta(vuelo){if(sentido=="Ida")$(inputVueloIdaSeleccionado).attr("rel",vuelo.id);else$(inputVueloVueltaSeleccionado).attr("rel",vuelo.id);}function NuevoFiltro(){paginaActual=1;numeroPropuestaTotales=0;FiltraOperadoresYHorarios();if(numeroPropuestaTotales==0){MostrarCapaFiltrosinResultados(true);return;}}function FiltraOperadoresYHorarios(){for(var contador=0;contador<RespuestaListadoVuelos.ListaPropuestaIdaVuelta.length;contador++){FiltraPropuesta(contador);}}var operadorCorrecto;function FiltraPropuesta(contador){var propuesta=RespuestaListadoVuelos.ListaPropuestaIdaVuelta[contador];operadorCorrecto=false;propuesta.visible=false;var iataIda=propuesta.IataOperadorIda;var iataVuelta=propuesta.IataOperadorVuelta;operadorCorrecto=EstaOperadorActivo(iataIda)if(iataVuelta!=null)operadorCorrecto=operadorCorrecto&& EstaOperadorActivo(iataVuelta);if(operadorCorrecto==true){operadorCorrecto=false;$(propuesta.ListaVuelosIda).each(ProcesarHorariosEscalasIda);if(operadorCorrecto==true&& propuesta.ListaVuelosVuelta!=null&& propuesta.ListaVuelosVuelta.length>0){operadorCorrecto=false;$(propuesta.ListaVuelosVuelta).each(ProcesarHorariosEscalasVuelta);}}if(operadorCorrecto==true){numeroPropuestaTotales++;propuesta.visible=true;}}function ProcesarHorariosEscalasIda(n){if(sinEscalas==true&& this.escalas>=numeroEscalasMinimo){this.Activo=false;return;}vuelo=this;ProcesarHorarios(horaIdaMinimo,horaIdaMaximo);}function ProcesarHorariosEscalasVuelta(n){if(sinEscalas==true&& this.escalas>=numeroEscalasMinimo){this.Activo=false;return;}vuelo=this;ProcesarHorarios(horaVueltaMinimo,horaVueltaMaximo);}var vuelo;function ProcesarHorarios(horaMinimo,horaMaximo){var horaSalida=parseInt(vuelo.horaSalida.split(":")[0]);var minutoSalida=parseInt(vuelo.horaSalida.split(":")[1]);var correccion=minutoSalida>0?1:0;if(horaSalida>=horaMinimo&&(horaSalida+correccion)<=horaMaximo){operadorCorrecto=true;vuelo.Activo=true;}elsevuelo.Activo=false;}function EstaOperadorActivo(keyOperador){var numOperadores=RespuestaListadoVuelos.ListaOperadores.length;for(var contador=0;contador<numOperadores;contador++){var operador=RespuestaListadoVuelos.ListaOperadores[contador];if(operador.Key==keyOperador&& operador.Activo==true)return true;}return false;}function StartFiltrado(value){PeticionFiltrado=value;window.scrollTo(0,0);MostrarCapaFiltrosinResultados(false);$(idHtmlContenedoraListado).fadeOut("medium",ContinuaFiltrado);}function ContinuaFiltrado(){$(capaEsperaClass).fadeIn("medium",FinFiltrado);}function FinFiltrado(){if(PeticionFiltrado)NuevoFiltro();if(numeroPropuestaTotales>0){MostrarListado(false);$(capaEsperaClass).fadeOut("medium",function(){$(idHtmlContenedoraListado).fadeIn("medium");});}}function CambioPagina(){paginaSolicitada=$(this).attr("rel");if(paginaActual==paginaSolicitada)return;paginaActual=paginaSolicitada;StartFiltrado(false);}function DevuelveRegInferior(){return(paginaActual-1)*regXPagina;}function DevuelveRegSuperior(){var regSuperior=(paginaActual-1)*regXPagina+(regXPagina-1);if(regSuperior>numeroPropuestaTotales)regSuperior=numeroPropuestaTotales-1;return regSuperior;}function RecuperaPaginasTotales(){var totales=Math.floor(numeroPropuestaTotales/ regXPagina);if((numeroPropuestaTotales%regXPagina)>0)totales+=1;return totales;}function ActivateChkOperador(n){$(this).bind("click",ClickRdbOperadorEvent);}function ActivateChkOperadorEsclusivo(n){$(this).bind("click",ClickRdbOperadorEventExclusivo);}function ClickRdbOperadorEvent(){var iataCodeOperador=$(this).attr("rel");var operador=RecuperaOperador(iataCodeOperador);if(operador.Activo)this.src=urlServidor+"/images/radio_bot.gif";elsethis.src=urlServidor+"/images/radio_bot_selec.gif";operador.Activo=!operador.Activo;StartFiltrado(true);}function ClickRdbOperadorEventExclusivo(){var numOperadores=RespuestaListadoVuelos.ListaOperadores.length;iataOperadorSeleccionado=this.rel;if(iataOperadorSeleccionado=="todas"){$(idTablaOperadores).find("img.chkOperador").each(function(){this.src=urlServidor+"/images/radio_bot_selec.gif";});$(RespuestaListadoVuelos.ListaOperadores).each(function(){this.Activo=true;});StartFiltrado(true);return;}$(idTablaOperadores).find("img.chkOperador").each(function(){this.src=urlServidor+"/images/radio_bot.gif";});$(idTablaOperadores).find("img.chkOperador[rel='"+iataOperadorSeleccionado+"']").each(function(){this.src=urlServidor+"/images/radio_bot_selec.gif"});for(var contador=0;contador<numOperadores;contador++){if(RespuestaListadoVuelos.ListaOperadores[contador].Key!=iataOperadorSeleccionado)RespuestaListadoVuelos.ListaOperadores[contador].Activo=false;elseRespuestaListadoVuelos.ListaOperadores[contador].Activo=true;}StartFiltrado(true);}function HovePagina(){if($(this).text()==paginaActual)return;$(this).attr("class","resaltado");}function MouseOutPaqina(){if($(this).text()==paginaActual)$(this).attr("class","actual");else$(this).attr("class","");}function ClickRdbEvent(){if($(this).src==imgRdbSeleccionado.src)return;var grupo=$(this).attr("rel");$("img.pointer[rel='"+grupo+"']").attr("src",imgRdbDesseleccionado.src);this.src=imgRdbSeleccionado.src;filaVuelo=$(this).parent().parent()var guidVueloSolicitado=$(filaVuelo).attr("rel");tablaVuelo=$(filaVuelo).parent().parent()sentido=$(tablaVuelo).attr("rel");tablaPropuesta=$(tablaVuelo).parent();tipoPropuesta=$(tablaPropuesta).parent().find("input.tipoPropuesta").val();var capaCentral=$(tablaPropuesta).parent();inputVueloIdaSeleccionado=$(capaCentral).find(ClassInputHiddenIda);inputVueloVueltaSeleccionado=$(capaCentral).find(ClassInputHiddenVuelta);if(sentido=="Ida")inputVueloIdaSeleccionado.attr("rel",guidVueloSolicitado);elseinputVueloVueltaSeleccionado.attr("rel",guidVueloSolicitado);$(capaCentral).find(idHtmlPrecioVuelo).find("a[title='Reservar']").attr("href",MontaEnlaceBtnReserva());}function ActivarCapaEspera(value){if(value==true){$(classListadoVuelos).hide("medium",function(){$(capaEsperaClass).show();});}else{$(capaEsperaClass).hide("medium",function(){$(classListadoVuelos).show();});}}function SliderIdaMoved(sender,eventArgs){horaIdaMinimo=sender.get_selectionStart();horaIdaMaximo=sender.get_selectionEnd();$(idFiltroVuelos).find("p.horaIda span.valor").text(CreaTextoHora(horaIdaMinimo,horaIdaMaximo));StartFiltrado(true);}function SliderVueltaMoved(sender,eventArgs){horaVueltaMinimo=sender.get_selectionStart();horaVueltaMaximo=sender.get_selectionEnd();$(idFiltroVuelos).find("p.horaVuelta span.valor").text(CreaTextoHora(horaVueltaMinimo,horaVueltaMaximo));StartFiltrado(true);}function SliderVueltaCambiando(sender,eventArgs){var valorAntiguo=eventArgs.get_oldValue();if(valorAntiguo==horaVueltaMinimo)horaVueltaMinimo=sender.get_selectionStart();elsehoraVueltaMaximo=sender.get_selectionEnd();$(idFiltroVuelos).find("p.horaVuelta span.valor").text(CreaTextoHora(horaVueltaMinimo,horaVueltaMaximo));}function SliderIdaCambiando(sender,eventArgs){var valorAntiguo=eventArgs.get_oldValue();if(valorAntiguo==horaVueltaMinimo)horaVueltaMinimo=sender.get_selectionStart();elsehoraVueltaMaximo=sender.get_selectionEnd();$(idFiltroVuelos).find("p.horaIda span.valor").text(CreaTextoHora(horaVueltaMinimo,horaVueltaMaximo));}function CreaTextoHora(horaMinima,horaMaxima){return "De "+CompletaHora(horaMinima)+" a "+CompletaHora(horaMaxima);}function CompletaHora(_hora){var hora=_hora.toString();if(hora.length==1)hora="0"+hora;return hora+"h.";}function MostrarCapaSinResultados(value){MostrarCapaMensajeria(value,"mensajeriaBusqueda");}function MostrarCapaFiltrosinResultados(value){MostrarCapaMensajeria(value,"mensajeriaFiltro");}function MostrarCapaMensajeria(value,capa){$(idCapaListadoVuelos).empty();$(capaPaginadorVuelos).empty();if(value==true)$(capaEsperaClass).fadeOut("medium",function(){$(".mensajeria."+capa).fadeIn("medium");});else$(".mensajeria."+capa).hide();}function SumaPrecios(precioParcial,precioVuelta){var precio=new Number(PrecioToNeutralFormat(precioParcial)+PrecioToNeutralFormat(precioVuelta));return PrecioNeutralToSpanishFormat(precio.toFixed(2));}function PrecioToNeutralFormat(precio){return parseFloat(precio.toString().replace(",","."));}function PrecioNeutralToSpanishFormat(precio){return precio.toString().replace(".",",");}function MontaEnlaceBtnReserva(){var url=urlReserva+"/Reservas/ReservaVuelos.aspx?id="+RespuestaListadoVuelos.IdSolicitud+"&tp="+tipoPropuesta+"&ji="+$(inputVueloIdaSeleccionado).attr("rel");journeyVuelta=$(inputVueloVueltaSeleccionado).attr("rel");if(journeyVuelta&& journeyVuelta.length>0)url+="&jv="+journeyVuelta;return url;}function PrecargarImagenes(){imgBlank.src=urlServidor+"/images/blank1x1.gif";imgEscalas.src=urlServidor+"/images/ico_escalas.gif";imgEscalas.alt="Vuelo con Escalas";imgEscalas.title="Vuelo con Escalas";imgAvionIda.src=urlServidor+"/images/Avion_ida.gif";imgAvionIda.alt="Ida";imgAvionVuelta.src=urlServidor+"/images/Avion_vuelta.gif";imgAvionVuelta.alt="Vuelta";imgIda.src=urlServidor+"/images/ida.png";imgVuelta.src=urlServidor+"/images/vuelta.png";imgRdbSeleccionado.src=urlServidor+"/images/radio_bot_selec.gif";imgRdbDesseleccionado.src=urlServidor+"/images/radio_bot.gif";imgInformacion.src="/images/ico_informacion.gif";imgInformacion.alt="Información general";$(imgInformacion).attr("class","masInfo");imgFlecha.src=urlServidor+"/images/bullet_masInfor.gif";imgFlecha.alt=" > ";}