﻿//Custom Map con la API de google maps v3 y calendario de precios.

var NombreMes = ["Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"];

//Eleccion entre Mapa o calendario
function ApareceMapa(id, lugar)
{
     if (id == "departure" && $("#arrival").val() == "")
     {
        PeticionPintaMapa(lugar);
     }
     else if ($("#departure").val() != "")
     {
        PeticionCalendario(false, lugar);
     }
}


/*++++++++++++++++++++++++FUNCIONES DEL MAPA++++++++++++++++++++++++++++++++++++++++*/
//Peticion por Ajax del JSON de vuelos
function PeticionPintaMapa(lugar)
{
    var category = "roundtrip";
    if ($("#tripType2").attr("checked"))
        category = "OneWay";
    var URL = "engine/serviceAlternartivas.ashx?departure=" + lugar + "&company=" + $("#company").val() + "&kind=map&category="+category;
    $.ajax({type: "POST", url: URL, data:"",
        success: function(data)
        {
            var json = data;
            if (json.length > 0)
            {
                
                if ($('#calendarioDerecho').is (':visible')) 
                    $("#calendarioDerecho").slideToggle();
                if (!$('#mapaDerecho').is (':visible'))
                    $("#mapaDerecho").slideToggle();

                $("#destinoMapaSpan").html(lugar);

                sleep(20);
                codeAddress(json, json.length);
                
                if ($('#resultadosOrigen').is (':visible'))
                    $("#resultadosOrigen").hide();
                
                $("#resultadosOrigen").html("");
                
                var maximo = 6;
                if ((json.length) < maximo)
                    maximo = json.length;

                for (var i=0; i< maximo; i++)
                {
                    if (json[i].ArrivalLocation.Parent.Codes.ISO == null)
                        flag = json[i].ArrivalLocation.Parent.Parent.Codes.ISO
                    else
                        flag = json[i].ArrivalLocation.Parent.Codes.ISO;
                    $("#resultadosOrigen").append("<p style='cursor:pointer;'><img style='padding-right: 10px;' src='http://fotos.muchoviaje.com/images/flags/" + flag + ".gif'><span onclick='SeleccionDestinoClick(this,\""+json[i].DateGo+"\",\""+json[i].DateReturn+"\");'>" + json[i].ArrivalLocation.Name + " (" + json[i].ArrivalLocation.Codes.IATA + ") <strong>"+ json[i].Price +" €</strong></span></p>");
                }
                $("#resultadosOrigen").append("<p style='cursor:pointer;' onclick='$(\"#resultadosOrigen\").slideToggle();'>Cerrar</p>");
                if (!$('#resultadosOrigen').is (':visible')) $("#resultadosOrigen").slideToggle();
            }
        }, error: function(data)
        {
            return "ha habido algun problema";
        }
     });
}


var map = null;
var infoWindow = null;
function initialize(latlang) {
      var myOptions = {
    zoom: 4,
    center: latlang,
    mapTypeId: google.maps.MapTypeId.ROADMAP
  }
  infoWindow = new google.maps.InfoWindow({content: ""});
  map = new google.maps.Map(document.getElementById("mapa"), myOptions);
}

var markers = new Array();
//Funcion que pinta enl mapa de google usando la API.
function codeAddress(puntos, maximo){
    var latlng = new google.maps.LatLng(puntos[0].ArrivalLocation.Latitude, puntos[0].ArrivalLocation.Longitude);

    if (map == null)
        initialize(latlng);
    if (markers.length != 0)
    {
        for (i in markers)
            markers[i].setMap(null);
        markers.length = 0;
    }
    var bounds = new google.maps.LatLngBounds();
    //bounds.extend(latlng);
    //map.fitBounds(bounds);
    
    var comienzo = 1;
    if (map)
        comienzo = 0;
    for (var i = comienzo; i < maximo; i++)
    {
        if ((puntos[i].ArrivalLocation.Latitude != null && puntos[i].ArrivalLocation.Latitude != 0) && (puntos[i].ArrivalLocation.Longitude != null && puntos[i].ArrivalLocation.Longitude != 0))
        {
            
            var location = new google.maps.LatLng(puntos[i].ArrivalLocation.Latitude, puntos[i].ArrivalLocation.Longitude);
            var marker = new google.maps.Marker({
                map: map,
                position: location,
                title: puntos[i].ArrivalLocation.Name,
                html : GetContentBocata(puntos[i])
            });
            markers[i] = marker;
            
            //Con esto se centra y se cambia el zoom en funcion del numero de aeropuertos
            sleep(20);
            bounds.extend(location);
            map.fitBounds(bounds);
        }
    }
    
    for (var i = comienzo; i<markers.length; i++)
    {
        var marker = markers[i];
        google.maps.event.addListener(marker, 'click', function()
        {
            infoWindow.setContent(this.html);
            infoWindow.open(map, this);
        });
    }
}


function GetContentBocata(punto)
{
    var category = "";
    if ($("#tripType2").attr("checked"))
        category = "OneWay";

    var dateGoConvert = punto.DateGo.split("-")[2].substring(0,2) + "%2F" + punto.DateGo.split("-")[1] + "%2F" + punto.DateGo.split("-")[0];
    var dateReturnConvert = punto.DateReturn.split("-")[2].substring(0,2) + "%2F" + punto.DateReturn.split("-")[1] + "%2F" + punto.DateReturn.split("-")[0];
    var img ="";
    var kind = punto.Company.Type;
    switch (kind)
        {
            case 0: kind = "any";
                break;
            case 1: kind = "air";
                break;
            case 2: kind = "rail";
                break;
            case 3: kind = "bus";
                break;
        }
    var company = punto.Company.Codes.IATA;
    if (company == "LC" || company == "FR" || company == "U2" || company == "HV" || company == "QS" || company == "W6" || company == "EI" || company == "WW" || company == "0B" || company == "BE" || company == "X3") {
        img += "http://fotos.muchoviaje.com/images/"+kind+"/logos_cias/lowcost2_p.jpg";
    } else {
        img += "http://fotos.muchoviaje.com/images/"+kind+"/logos_cias/" + company + "_mp.gif";
    }
    var content="<div class='bocata'>"+
                    "<div class='tittle'>"+
                        "<h3><span>Desde </span><strong> "+punto.Price.toString().split(".")[0]+"€</strong></h3>"+                       
                    "</div>"+
                    "<div class='ida'>"+
                        "<p class='idatext'>"+
                            "<label class='text'><span id='Span27'>Ida: </span></label><br />"+
                            "<span id='Span28' class='Origen' >"+punto.DepartureLocation.Name+" - "+punto.ArrivalLocation.Name+"</span><br />"+
                            "<label class='Fecha'><span id='Span7'>"+FechaStandard(punto.DateGo)+"</span></label>"+
                            "<img src='"+img+"' style='width: 85px; height: 20px;'/>"+
                        "</p>"+
                    "</div>"+
                    "<div class='vuelta'>"+
                        "<p class='idatext'>"+
                            "<label class='text'><span id='Span27'>Vuelta: </span></label>"+
                            "<span id='Span28' class='Origen' >"+punto.ArrivalLocation.Name+" - "+punto.DepartureLocation.Name+"</span>"+
                            "<label class='Fecha'><span id='Span7'>"+FechaStandard(punto.DateReturn)+"</span></label>"+
                            "<img src='"+img+"' style='width: 85px; height: 20px;'/>"+
                        "</p>"+
                    "</div>"+
                    "<div class='search'> "+
                        //GetURLGo(DepartureIata, dateGoConvert, ArrivalIata, dateReturnConvert, kind, esMapa)
                        "<a class='bocatabt' href='#' onclick='GetURLGo(\""+ punto.DepartureLocation.Codes.IATA+"\", \""+ dateGoConvert+"\", \""+ punto.ArrivalLocation.Codes.IATA+"\", \""+ dateReturnConvert+"\", \""+ punto.Company.Type+"\", true)'>Seleccionar</a>"+
                        //"<a class='botpopup' href='disponibilidad/buscador.aspx?departure="+ punto.DepartureLocation.Codes.IATA +"&dateGo="+dateGoConvert+"&goTime=&tripType="+category+"&arrival="+punto.ArrivalLocation.Codes.IATA+"&dateReturn="+dateReturnConvert+"&returnTime=&adults=2&childs=0&air=on&rail=on'>Seleccionar</a>"+
			            //"<input type='submit' class='boton' id='ImgBtnReservar'  value='Buscar +' >"+
	                "</div>"+
                "</div>";
      return content;
}

function FechaStandard(fecha)
{
    var fechaFomart = fecha.substring(8,10)+"/"+fecha.substring(5,7)+"/"+fecha.substring(0,4);
    return fechaFomart;
}

function sleep(millisegundos) {
var inicio = new Date().getTime();
while ((new Date().getTime() - inicio) < millisegundos);
}

//Auxiliar para esconder mapa o calendario
function SeleccionDestinoClick(seleccion, dateGo, dateReturn)
{
    var cadena = $(seleccion).html();
    cadena = cadena.substring(0, (cadena.indexOf("<")-1));
    $("#arrival").val(cadena);
    $("#resultadosOrigen").slideToggle();
    $("#resultadosOrigen").hide();
    $("#dateGo").val(dateGo.split("-")[2].substring(0,2)+"/"+dateGo.split("-")[1]+"/"+dateGo.split("-")[0]);
    $("#dateReturn").val(dateReturn.split("-")[2].substring(0,2)+"/"+dateReturn.split("-")[1]+"/"+dateReturn.split("-")[0]);
    PeticionCalendario(false, cadena);
}

/*++++++++++++++++++++FIN FUNCIONES DEL MAPA++++++++++++++++++++++++++++++++++++++++*/

/*+++++++++++++++++++++++FUNCIONES DEL CALENDARIO+++++++++++++++++++++++++++++++++++*/
//Peticion AJAX de los datos para el calendario
function PeticionCalendario(escambio, lugar)
{
    var category = "roundtrip";
    if ($("#tripType2").attr("checked"))
        category = "oneway";
    
    var fechaSalida;
    if ($("#comboMesCalendar").val() != null && escambio)
        fechaSalida = $("#comboMesCalendar").val();
    else
    {
        var fechaHoy = new Date();
        fechaSalida = $("#dateGo").val().split("/")[2] + "-"+$("#dateGo").val().split("/")[1]  // fechaHoy.getFullYear() + "-" + (fechaHoy.getMonth() + 1);
    }
    if (lugar == null)
        lugar = $("#arrival").val();
    var URL ="engine/serviceAlternartivas.ashx?departure=" + $("#departure").val() + "&arrival="+ lugar + "&company="+ $("#company").val() + "&departureDate=" + fechaSalida + "&category=" + category + "&kind=calendar";
    
    $.ajax({type: "POST", url: URL, data:"",
        success: function(data)
        {
            var json = data;
            if (!$('#calendarioDerecho').is (':visible')) $("#calendarioDerecho").slideToggle();
            if ($('#mapaDerecho').is (':visible')) $("#mapaDerecho").slideToggle();
            if (json.length > 0)
                PintaCalendario(json, escambio);
            else
            {
                var noResults = "<div class='popupsin '><span class='noresults'>NO SE HAN ENCONTRADO SUGERENCIAS PARA ESTE MES</span></div>";
                var combo = GetComboMes(new Date(), 0, 0);
                var valCombo = $("#comboMesCalendar").val();
                
                $("#calendarioDerecho").html("");
                $("#calendarioDerecho").append("<span class='dateflex'>Fechas flexibles:</span><span class='better'>Mejores tarifas de " + GetIata($("#departure").val()) + " a " + GetIata($("#arrival").val()) + "</span>");
                
                var tabla = "<table ><tr class='DaysWeek'><th>LUN</th>"+
	                        "<th>MAR</th><th>MIÉR</th>"+
	                        "<th>JUE</th><th>VIER</th>"+
	                        "<th>SAB</th><th>DOM</th></tr></table>";
                
                $("#calendarioDerecho").append(combo + tabla + noResults);
                $("#comboMesCalendar").val(valCombo);
            }
        }, error: function(data)
        {
            //alert("Error " + data);
            return "ha habido algun problema";
        }
     });
}


//Modificacion y pintado del Custom calendar
function PintaCalendario(json, escambio)
{
    if (json != null)
    {
        var fechaHoy = new Date();
        fechaHoy = new Date($("#dateGo").val().split("/")[2], ($("#dateGo").val().split("/")[1]-1), $("#dateGo").val().split("/")[0]);
        
	    var maxdias = getNumDiasMes(fechaHoy.getMonth(), fechaHoy.getFullYear());
	    var hoy = fechaHoy.getDate();
	    var contadorDiaSem = 1;
	    var fechaDia1 = new Date(fechaHoy.getFullYear(), fechaHoy.getMonth(), 1);
	    /*if (hoy > 25)
	        fechaDia1 = new Date(fechaHoy.getFullYear(), fechaHoy.getMonth() + 1, 1);*/
	    var combo = "";
	    var comboSelected = $("#comboMesCalendar").val();

	    if (escambio)
        {
            var mesCambio = $("#comboMesCalendar").val();
            fechaDia1 = new Date(mesCambio.split("-")[0], (mesCambio.split("-")[1] - 1), 1);
            maxdias = getNumDiasMes(fechaDia1.getMonth(), fechaDia1.getFullYear());
            if (fechaHoy.getMonth() != fechaDia1.getMonth())
                hoy = 1;
        }
	    $("#calendarioDerecho").html("");
        
        $("#calendarioDerecho").append("<span class='dateflex'>Fechas flexibles:</span><span class='better'>Mejores tarifas de " + GetIata($("#departure").val()) + " a " + GetIata($("#arrival").val()) + "</span>");

        combo = GetComboMes(fechaHoy, fechaHoy.getMonth()- (new Date().getMonth()), fechaHoy.getFullYear()- (new Date().getFullYear()));

	    var tabla = "<table ><tr class='DaysWeek'><th>LUN</th>"+
	                "<th>MAR</th><th>MIÉR</th>"+
	                "<th>JUE</th><th>VIER</th>"+
	                "<th>SAB</th><th>DOM</th></tr><tr class='casillasDias'>";

	    for (var i = 1; i<fechaDia1.getDay(); i++)
	    {
		    tabla += "<td bgcolor = '#ffffff'>__</td>";
		    contadorDiaSem++;
	    }
	    
	    if (hoy > 25)
	        hoy = 1;
	    for (var i = 1; i<maxdias + 1; i++)
	    {
		    if (i < hoy)
		    {
			    tabla += "<td bgcolor = 'grey'>" + i +"</td>";
			}
		    else
		    {
			    var fecha = new Date(fechaDia1.getFullYear(), fechaDia1.getMonth(), i);
			    var dataJson = new Object();
			    dataJson = GetJsonData(fecha, json);
                if (dataJson != null)
                {
                    if (dataJson.Price >= 0 && dataJson.Price <= 75 )
			            tabla += "<td class='low' "
			        else if (dataJson.Price > 75 && dataJson.Price <= 150)
			            tabla += "<td class='medium' "
			        else
			            tabla += "<td class='high' "
			            
			        var dateGo = dataJson.DateGo.split("-")[2].substring(0,2) + "%2F" + dataJson.DateGo.split("-")[1] + "%2F" + dataJson.DateGo.split("-")[0]; 
                    var dateReturn = dataJson.DateReturn.split("-")[2].substring(0,2) + "%2F" + dataJson.DateReturn.split("-")[1] + "%2F" + dataJson.DateReturn.split("-")[0];
                    var dateGoConvert = dataJson.DateGo.split("-")[2].substring(0,2) + "%2F" + dataJson.DateGo.split("-")[1] + "%2F" + dataJson.DateGo.split("-")[0]; 
                    var dateReturnConvert = dataJson.DateReturn.split("-")[2].substring(0,2) + "%2F" + dataJson.DateReturn.split("-")[1] + "%2F" + dataJson.DateReturn.split("-")[0];
				    
				    
				    //Preparado de cara al futuro, para cuando se inserte el company return para el logo.
				    if (dataJson.CompanyReturn == null || dataJson.CompanyReturn == "undefined")
				        dataJson.CompanyReturn = dataJson.Company;

				    tabla += "id='TD"+i+"' onclick='GetURLGo(\""+ dataJson.DepartureLocation.Codes.IATA+"\", \""+ dateGoConvert+"\", \""+ dataJson.ArrivalLocation.Codes.IATA+"\", \""+ dateReturnConvert+"\", \""+ dataJson.Company.Type+"\", false)'"+
				             "onmouseover='ShowPopUp(\""+dataJson.DateGo+"\",\""+dataJson.DateReturn+"\",\""+dataJson.Company.Codes.IATA+"\", \""+dataJson.CompanyReturn.Codes.IATA+"\", \"TD"+i+"\", \""+dataJson.DepartureLocation.Codes.IATA+"\", \""+dateGoConvert+"\", \""+dataJson.ArrivalLocation.Codes.IATA+"\", \""+dateReturnConvert+"\", \""+dataJson.Company.Type+"\");' "+
				             "onmouseout='HidePopUp(\"TD"+i+"\")'>";
			        tabla += "<span class='dateNumber'>" + i + "</span>";
                    
			        tabla += "<p style='cursor:pointer;'><span class='price'>" + dataJson.Price + "</span></p>";
			    }
			    else
			        tabla += "<td><span class='dateNumber'>" + i + "</span>";
			    tabla += "</td>";
			}
		    if (contadorDiaSem % 7 == 0)
			    tabla += "</tr><tr class='casillasDias'>";
		    contadorDiaSem ++;
	    }
	    tabla += "</tr></table>";

	    var imagen = "<div class='leyendaTableV'></div>";
	    $("#calendarioDerecho").append(combo + tabla + imagen);
	    
	    if (comboSelected)
	        $("#comboMesCalendar").val(comboSelected);
	    else
	    {
	        $("#comboMesCalendar").val(fechaHoy.getFullYear() + "-" + AnadeCeros(fechaHoy.getMonth()+1));
	    }
	}
}

function GetComboMes(fechaHoy, diferenciaMes, difAnio)
{
    var combo = "<select id='comboMesCalendar' class='comboDate' onchange='PeticionCalendario(true);'>";
    for (var i=0; i<5; i++)
    {
        var fechaAux = new Date(fechaHoy.getFullYear() - difAnio, (fechaHoy.getMonth()+i-diferenciaMes), 1)
        combo += "<option value='"+fechaAux.getFullYear()+"-"+AnadeCeros(fechaAux.getMonth()+1)+"'>"+NombreMes[fechaAux.getMonth()]+" - "+fechaAux.getFullYear()+"</option>";
        
    }
    combo += "</select>";
    return combo;
}

//function GetURLGo(dateGo, dateReturn, company, companyReturn, DepartureIata, dateGoConvert, ArrivalIata, dateReturnConvert, kind, esMapa)
function GetURLGo(DepartureIata, dateGoConvert, ArrivalIata, dateReturnConvert, kind, esMapa)
{
    //dateGo = new Date(dateGo);
    //dateReturn = new Date(dateReturn);
    var category = "RoundTrip";
    if (!esMapa)
    {
        if ($("#tripType2").attr("checked"))
            category = "OneWay";
    }
    switch (kind)
    {
        case "0": kind = "any";
            break;
        case "1": kind = "air";
            break;
        case "2": kind = "rail";
            break;
        case "3": kind = "bus";
            break;
    }
    showWaiter('esperaBusqueda2', true);
    window.location ="disponibilidad/buscador.aspx?departure="+ DepartureIata +"&dateGo="+dateGoConvert+"&goTime=&tripType="+category+"&arrival="+ArrivalIata+"&dateReturn="+dateReturnConvert+"&returnTime=&adults=2&childs=0&air=on&rail=on";
}


//var IsShownPopUp = false;
//var clickado = false;
//var idBloqueo = "";
function ShowPopUp(dateGo, dateReturn, company, companyReturn, elem, DepartureIata, dateGoConvert, ArrivalIata, dateReturnConvert, kind)
{
    
    //if (!IsShownPopUp && !clickado)
    //{
        $("#" + elem).attr("class",$("#" + elem).attr("class") + "on");
        //IsShownPopUp = true;
        var offset =$("#"+elem).position();
        
        switch (kind)
        {
            case "0": kind = "any";
                break;
            case "1": kind = "air";
                break;
            case "2": kind = "rail";
                break;
            case "3": kind = "bus";
                break;
        }

        var mensaje = "<ul><li class='ida'>";
        mensaje += "<p><strong>Ida:</strong>"+ dateGo.split("-")[2].substring(0,2) +"/" + (dateGo.split("-")[1]) + "/" + dateGo.split("-")[0] +"</p>";
        if (companyReturn == "LC" || companyReturn == "FR" || companyReturn == "U2" || companyReturn == "HV" || companyReturn == "QS" || companyReturn == "W6" || companyReturn == "EI" || companyReturn == "WW" || companyReturn == "0B" || companyReturn == "BE" || companyReturn == "X3") {
            mensaje += "<img src='http://fotos.muchoviaje.com/images/"+kind+"/logos_cias/lowcost2_p.jpg' />";
        } else {
            mensaje += "<img src='http://fotos.muchoviaje.com/images/"+kind+"/logos_cias/" + companyReturn + "_mp.gif' />";
        }
        if (!$("#tripType2").attr("checked"))
        {
            mensaje += "</li><li class='vuelta'>";
            mensaje += "<p><strong>Vuelta: </strong>" + dateReturn.split("-")[2].substring(0,2) +"/" + (dateReturn.split("-")[1]) + "/" + dateReturn.split("-")[0] +"</p>";
            if (company == "LC" || company == "FR" || company == "U2" || company == "HV" || company == "QS" || company == "W6" || company == "EI" || company == "WW" || company == "0B" || company == "BE" || company == "X3") {
                mensaje += "<img src='http://fotos.muchoviaje.com/images/"+kind+"/logos_cias/lowcost2_p.jpg' />";
            } else {
                mensaje += "<img src='http://fotos.muchoviaje.com/images/"+kind+"/logos_cias/" + company + "_mp.gif' />";
            }
            mensaje += "</li></ul>";
            /*mensaje += "</li><li class='botselect'><p></p>";
            mensaje += "<a class='botpopup' href='disponibilidad/buscador.aspx?departure="+ DepartureIata +"&dateGo="+dateGoConvert+"&goTime=&tripType=OneWay&arrival="+ArrivalIata+"&dateReturn="+dateReturnConvert+"&returnTime=&adults=2&childs=0&air=on&rail=on'>Seleccionar</a>";
            mensaje += "</li></ul>";*/
        }
        else
        {
            mensaje += "</li></ul>";
        }
        
        $("#PopUpCalendar").html(mensaje);
        $("#PopUpCalendar").show();
        $("#PopUpCalendar").css({"position" : "absolute", "top" : offset.top + "px", "left" : (offset.left + $("#" + elem).width() + 3) +"px",});
    //}
}

function HidePopUp(elem)
{
    //if (IsShownPopUp)
    //{
        IsShownPopUp = false;
        $("#PopUpCalendar").hide();
        var css = $("#" + elem).attr("class");
        if (css.substring(css.length-2, css.length) == "on")
            $("#" + elem).attr("class",css.substring(0, css.length-2));
    //}
}

function ClickOnTD(elem)
{
    if (idBloqueo == "" || elem == idBloqueo)
    {
        IsShownPopUp = (!IsShownPopUp); 
        clickado = (!clickado);
        if (clickado)
        {
            //$("#" + elem).attr("class",$("#" + elem).attr("class") + "on");
            idBloqueo = elem;
        }
        else
        {
            var css = $("#" + elem).attr("class");
            if (css.substring(css.length-2, css.length) == "on")
                $("#" + elem).attr("class",css.substring(0, css.length-2));
            idBloqueo = "";
        }
    }
}

//Añadir 0's a la izquierda en las fechas.
function AnadeCeros(valor)
{
    if (valor < 10)
        return "0" + valor;
    else
        return valor;
}


//Cambio del valor de fecha en el select sobre el cusstom calendar
function PeticionCalendarioCambioFecha()
{
    var cambioMesAnio = $("#dateGo").val().split("/")[2] +"-" + $("#dateGo").val().split("/")[1];
    $("#comboMesCalendar").val(cambioMesAnio);
    //PintaCalendario(true);
    PeticionCalendario(true, $("#arrival").val());
}

//Tratamiento individual del json y ordenacion segun fecha para el calendario
function GetJsonData(fecha, json)
{
    if (json != null)
    {   
        for (var i = 0; i < json.length; i++)
        {
            //alert(json[i].DateGo.split("-")[1] +" " + AnadeCeros((fecha.getMonth()+1).toString()) +" " + json[i].DateGo.split("-")[2].substring(0,2) + " " + AnadeCeros(fecha.getDate().toString()));
            if ((json[i].DateGo.split("-")[1] == AnadeCeros((fecha.getMonth()+1).toString())) && (json[i].DateGo.split("-")[2].substring(0,2) == AnadeCeros(fecha.getDate().toString())))
                return json[i];
        }
    }
    return null;
}

//Para saber el numero de dias del mes en funcion del año y si es bisiesto o no
function getNumDiasMes(mes, ano)
{
	if (mes == 0 || mes == 2 || mes == 4 || mes == 6 || mes == 7 || mes == 9 || mes == 11)
		return 31;
	else if ((mes == 1) && (ano % 4 == 0) && ((ano % 100 != 0) || (ano % 400 == 0)))
	    return 29;
	else if (mes == 1)
		return 28;
    
	else
		return 30;		
}

/*+++++++++++++++++++FIN FUNCIONES DEL CALENDARIO+++++++++++++++++++++++++++++++++++*/

//Obtener el codigo IATA de una poblacion
function GetIata(nombre)
{
    var iata = "";
    if (nombre.split("(").length > 1)
        iata = nombre.split("(")[1].substring(0,3);
    else
        iata = nombre;
    return iata;
}
