
/* Data odierna in formato yyyyMMdd*/
function getDateToday()
{
    var giorno='';
    giorno=new Date().getDay();
    if (giorno.toString.length == 1)
        giorno='0' + giorno;
    var mese='';
    mese=new Date().getMonth() + 1;
    if (mese<'10')
        mese='0' + mese;
    var anno='';
    anno=new Date().getFullYear();    
    var dataOggi='';
    dataOggi=dataOggi + anno + mese + giorno;
    
    return parseInt(dataOggi);
}


/* Restituisce la data di input nel formato yyyyMMdd*/
function getDateAAAAMMDD(data)
{
    var giorno='';
    giorno=data.split('/')[0];
    if (giorno.length == 1)
        giorno='0' + giorno;
    var mese='';
    mese=data.split('/')[1];
    if (mese.length == 1)
        mese='0' + mese; 
    var anno='';
    anno= data.split('/')[2];  
    var retData='';
    retData=retData + anno + mese + giorno;
    
    return parseInt(retData);
}


function getDestination(valore)
{
    var testo='';
    if (valore==1)
        testo=$('#txtPartenza').val();
    else
        testo=$('#txtArrivo').val();
    $('#hidTypeSuggest').val(valore);
    if (testo.length >= 2)
    {
        var params = { json: 'true', op: 'SuggestAirport', testoSuggest: testo, lingua:lingua };
        $.post("/Handler/SuggestHandler.ashx?", params, populateDepart);
    }
    else
    {
       if (valore == 1)
       {
            $('#divpartenza').attr('style','display:none;');
            $('#divpartenza').html('');
       }     
       else
       {
            $('#divarrivo').attr('style','display:none;');
            $('#divarrivo').html('');
       }     
    }
}



function populateDepart(obj)
{
   var tipoSuggest=$('#hidTypeSuggest').val();
   if ( obj != null)
   {
        obj=eval('(' + obj.split('while(1);')[1] + ')');
        if (obj.error != undefined)
        {
            if (obj.error == false)
            {
                if (obj.payload.length > 0)
                {
                    var valoreTop;
                    if ($('#hidVisualizzazione').val() == 0)
                    {
                        if (tipoSuggest==1)
                        {    
                            if (existBordo == 0)
                                valoreTop='204';
                            else
                                valoreTop='205';    
                            $('#divpartenza').attr('style','display:block; position:absolute; top:' + valoreTop + 'px; left:63px; padding-top:5px; padding-left:5px; padding-right:5px; padding-bottom:5px; width:135px;');
                        }
                        else
                        {
                            if (existBordo == 0)
                                valoreTop='231';
                            else
                                valoreTop='232';    
                            $('#divarrivo').attr('style','display:block; position:absolute; top:' + valoreTop + 'px; left:63px; padding-top:5px; padding-left:5px; padding-right:5px; padding-bottom:5px; width:135px;');
                        }
                    }
                    else
                    {
                        if (existBordo == 0)
                            valoreTop='96';
                        else
                            valoreTop='94';
                        if (tipoSuggest == 1)
                            $('#divpartenza').attr('style','display:block; position:absolute; overflow:auto; height:48px; top:' + valoreTop + 'px; left:160px; padding-top:5px; padding-left:5px; padding-right:5px; padding-bottom:5px; width:135px;');
                        else
                            $('#divarrivo').attr('style','display:block; position:absolute; overflow:auto; height:48px; top:' + valoreTop + 'px; left:336px; padding-top:5px; padding-left:5px; padding-right:5px; padding-bottom:5px; width:135px;');  
                    }
                
                    var resultDepart='';
                    for (var i=0; i< obj.payload.length; i++)
                    {
                        var nome=obj.payload[i].CityOF.arrNomi[0].Nome.replace('\'','&rsquo;') + '(' + obj.payload[i].Code + ' - ' + obj.payload[i].Name.replace('\'','&rsquo;') + ')';
                        resultDepart=resultDepart + '<a href="#" class="linkWidget char10Arial" onclick="setDepart(\'' + tipoSuggest + '\',\'' + obj.payload[i].Code + '\',\'' + obj.payload[i].CityOF.IDCity + '\',\'' + nome + '\')">' + nome + '</a><br />';
                    }
             
                    if (tipoSuggest==1)
                    {
                        $('#divpartenza').addClass('sfondoPagWidget bordoSuggestWidget');
                        $('#divpartenza').html(resultDepart);
                        $('#divarrivo').removeClass('sfondoPagWidget bordoSuggestWidget');
                        $('#divarrivo').html('');
                    }
                    else 
                    {   
                        $('#divarrivo').addClass('sfondoPagWidget bordoSuggestWidget');
                        $('#divarrivo').html(resultDepart); 
                        $('#divpartenza').removeClass('sfondoPagWidget bordoSuggestWidget'); 
                        $('#divpartenza').html('');
                    }
                }
                else
                {
                    if (tipoSuggest==1)
                    {
                        $('#divpartenza').attr('style','display:none');
                        $('#divpartenza').html('');
                    }    
                    else
                    {
                        $('#divarrivo').attr('style','display:none');
                        $('#divarrivo').html('');   
                    }  
                }
            }
            else
            {
                if (tipoSuggest==1)
                {
                    $('#divpartenza').attr('style','display:none');
                    $('#divpartenza').html('');
                }    
                else
                {
                    $('#divarrivo').attr('style','display:none');
                    $('#divarrivo').html('');   
                }  
            }   
        }
        else
        {
            if (tipoSuggest==1)
            {
                $('#divpartenza').attr('style','display:none');
                $('#divpartenza').html('');
            }    
            else
            {
                $('#divarrivo').attr('style','display:none');
                $('#divarrivo').html('');   
            }  
        }
    }
    else
    {
        if (tipoSuggest==1)
        {
            $('#divpartenza').attr('style','display:none');
            $('#divpartenza').html('');
        }    
        else
        {
            $('#divarrivo').attr('style','display:none');
            $('#divarrivo').html('');   
        }  
    }          
}


function setDepart(tipo,codice,idCitta,valore)
{
    if (tipo=='1')
    {
        $('#hidCodicePartenza').val(codice);
        $('#hidCittaPartenza').val(idCitta);
        $('#txtPartenza').val(valore);
        $('#divpartenza').html('');
        $('#divpartenza').attr('style','display:none');
    }
    else
    {
        $('#hidCodiceArrivo').val(codice);
        $('#hidCittaArrivo').val(idCitta);
        $('#txtArrivo').val(valore);
        $('#divarrivo').html('');
        $('#divarrivo').attr('style','display:none');
    }
}


function setTypeFlight(valore)
{
   $('#hidTipoVolo').val(valore);
   var stile='';
   if (valore==1)
        stile='display:none';
   else
        stile='display:block';
   $('#lblRitorno').attr('style',stile);
   $('#txtDataArrivo').attr('style',stile);
}

function setTypeClass(valore)
{
    $('#hidClasse').val(valore);
}



function searchFlight()
{
    var numAdulti = $('#sltAdulti').val();
    var numBambini = $('#sltBambini').val();
    var numNeonati = $('#sltNeonati').val();
    var codicePartenza=$('#hidCodicePartenza').val();
    var codiceArrivo=$('#hidCodiceArrivo').val();
    var dataPartenza=$('#txtDataPartenza').val();
    var tipoVolo=$('#hidTipoVolo').val();
    var classe=$('#hidClasse').val();
    var idCittaPartenza=$('#hidCittaPartenza').val();
    var idCittaArrivo=$('#hidCittaArrivo').val();
    var regData = new RegExp(/^(((0?[1-9]|[12]\d|3[01])[/](0?[13578]|1[02])[/]((1[6-9]|[2-9]\d)?\d{2}|\d))|((0?[1-9]|[12]\d|30)[/](0?[13456789]|1[012])[/]((1[6-9]|[2-9]\d)?\d{2}|\d))|((0?[1-9]|1\d|2[0-8])[/]0?2[/]((1[6-9]|[2-9]\d)?\d{2}|\d))|(29[/]0?2[/]((1[6-9]|[2-9]\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00|[048])))$/);
    
    if (codicePartenza=='')
        alert('Inserire la città di partenza');
    else
        if (codiceArrivo=='')
            alert('Inserire la città di arrivo');
        else  
            if (idCittaPartenza == idCittaArrivo)
                alert('Città di arrivo e/o di partenza non valida');
            else    
                if (codicePartenza == codiceArrivo)
                    alert('Aeroporto di arrivo e/o di partenza non valido');
                else    
                    if ((dataPartenza=='') || (dataPartenza == 'dd/mm/aaaa'))
                        alert('Inserire la data di partenza');
                    else
                        if (! regData.test(dataPartenza))
                            alert('Data di partenza non corretta.\n\nLa data deve essere nel formato dd/mm/aaaa.');
                        else 
                        {  
                            var dataOggi=getDateToday();
                            if (dataOggi > getDateAAAAMMDD(dataPartenza))
                                alert('Data di partenza non corretta');
                            else    
                                if (tipoVolo == '2')
                                {
                                    var dataArr=$('#txtDataArrivo').val();
                                    if ((dataArr == '') || (dataArr == 'dd/mm/aaaa'))
                                        alert('Inserire la data di arrivo');
                                    else
                                        if (! regData.test(dataArr))   
                                            alert('Data di arrivo non corretta.\n\nLa data deve essere nel formato dd/mm/aaaa.');
                                        else
                                            if ((dataOggi>getDateAAAAMMDD(dataArr)) || (getDateAAAAMMDD(dataPartenza)>getDateAAAAMMDD(dataArr)))
                                                alert('Data di arrivo non valida');
                                            else
                                            {
                                                $('#divFormRicerca').attr('style','display:none');
                                                HideFooter();
                                                $('#divResult').attr('style','display:none');
                                                $('#divLoading').attr('style','display:block;');
                                                $('#divDettaglio').attr('style','display:none');
                                                $.post("WidgetHandler.ashx", {json: 'true', op: 'RequestSearch', adulti: numAdulti, bambini:numBambini, neonati:numNeonati, partenza:codicePartenza, arrivo:codiceArrivo, dataPartenza:dataPartenza, dataArrivo:dataArr, classe:classe}, showFlights);
                                            }
                                }
                                else
                                {
                                    $('#divFormRicerca').attr('style','display:none');
                                    HideFooter();
                                    $('#divResult').attr('style','display:none');
                                    $('#divLoading').attr('style','display:block');
                                    $('#divDettaglio').attr('style','display:none');
                                    $.post("WidgetHandler.ashx", {json: 'true', op: 'RequestSearch', adulti: numAdulti, bambini:numBambini, neonati:numNeonati, partenza:codicePartenza, arrivo:codiceArrivo, dataPartenza:dataPartenza, dataArrivo:'', classe:classe}, showFlights);
                                }
                        }    
}





