// Inicialización de variables
var tot     = 10; //numero de items totals, aquesta variable la rebem desde un PHP
var inc     = 604; //salta de 3 en 3
inc_item    = 202; //salta de 1 en 1
var pos     = 0; //posició inicial del scroll
var stop    = true;
//posició del item seleccionado
var item    = 1;
var item2   = 1;

var temporizador1 = 'undefined';
var temporizador2 = 'undefined';

var navegador = navigator.appName

/////////////////Array amb les dades per mostrar al carrusel/////////////////////////////////////////////////////
//Redefinida en la vista del carrusel
var mycarousel_itemList = new Array();

function mycarousel_itemLoadCallback(carousel, state)
{
    for (var i = 1; i <= mycarousel_itemList.length; i++)
    {
        if (carousel.has(i)) continue;
        if (i > mycarousel_itemList.length) break;
        carousel.add(i, mycarousel_getItemHTML(mycarousel_itemList[i-1]));
        $("#banner-dest").append(destacat_getItemHTML(mycarousel_itemList[i-1]));
    }

    //miramos si el número de items es multiplo de 3 o no
    var resto;
    var num1 = mycarousel_itemList.length;
    var items = mycarousel_itemList.length;
    var dif = 0;
    var num2 = 3;

    resto = num1%num2;
    while (resto!=0)
    {
       //alert(num1 + " NO es múltiplo de " + num2);
        num1+=1;
        resto = num1%num2;
    }

    dif = num1 - items;
    if(dif > 0) { //Si no es multiplo de 3
       for (var x = 1; x <= dif; x++) {
          $("#carousel").append("<li></li>");
        }
    }
};

/**
 * Item html creation helper.
 */
function mycarousel_getItemHTML(item)
{
    return  '<a onclick="show_dest(\''+ item.id +'\');" href="#" title="' + item.shorttitle + '"><img src="' + item.thumb + '" alt="' + item.shorttitle + '"></a>' +
            '<div><strong>' + item.pais + '</strong>' +
            '<h3><a onclick="show_dest(\''+ item.id +'\');" href="#" title="' + item.shorttitle + '">' + item.shorttitle + '</a></h3>'+
            '<span>' + item.shortdesc + '</span></div>';
};


function destacat_getItemHTML(item)
{
    var destinoDias = '';
    if (item.modulo == 'viajesvaco'){
        destinoDias = item.pais + ', ' + item.dias;
    }else if (item.modulo == 'viajesgrvi'){
        destinoDias = item.dias;
    }

    detalleDestacado = '<div id="banner-dest-'+ item.id +'" class="banner-dest">' +
            '<img src="'+ item.img +'" alt="' + item.shorttitle + '">' +
            '<div class="desc-rut">' +
                '<div>' +
                    '<h3><a href="' + item.url + '" title="' + item.shorttitle + '">' + item.shorttitle + '</a></h3>';

    if (item.modulo == 'viajesvaco'){
        detalleDestacado = detalleDestacado + '<dl class="pvp-rut">' +
                    '<dt class="ocu">' + LBL_DIAS + ':</dt>' +
                    '<dd>' + destinoDias + ' ' + LBL_DIAS +'</dd>' +
                    '<dt>' + LBL_DESDE + ':</dt>' +
                    '<dd><strong>' + item.price + ' €</strong></dd>' +
                '</dl>' +
                '<dl class="pvp-soc-f2">' +
                    '<dt class="clr-pvp-soci">' + LBL_SOCIO_RACC + ':</dt>' +
                    '<dd class="clr-pvp-soci">' + item.priceracc + ' €</dd>' +
                    '<dt class="clr-pvp-dsc">' + LBL_DESCUENTO + ':</dt>' +
                    '<dd class="clr-pvp-dsc">' + item.discount + ' €</dd>' +
                '</dl>' +
            '</div>';
    }else if (item.modulo == 'viajesgrvi'){
                    detalleDestacado = detalleDestacado + '<dl class="pvp-rut">' +
                    '<dt class="fil-ver">' + LBL_SALIDA + ':</dt>' +
                    '<dd>' + item.fSalida + '</dd>' +
                    '<dt class="ocu">' + LBL_DIAS + ':</dt>' +
                    '<dd>' + destinoDias + ' ' + LBL_DIAS +'</dd>' +
                '</dl>' +
                '<dl class="pvp-rut">' +
                    '<dt class="ocu">Desc</dt>' +
                    '<dd class="fil-ver">' + item.subtitle + '</dd>' +
                '</dl>' +
            '</div>';
    }

    detalleDestacado = detalleDestacado + '<div class="bot">' +
                    '<a href="' + item.url + '" title="' + LBL_VER_DETALLE + '">' + LBL_VER_DETALLE + '</a>' +
                '</div>' +
            '</div>' +
        '</div>';
    return detalleDestacado;
};


$(document).ready(function() {
    /////////////////Calcul de l'scroll de la home/////////////////////////////////////////////////////
    $('#carousel').jcarousel({
        size: mycarousel_itemList.length,
        itemLoadCallback: {onBeforeAnimation: mycarousel_itemLoadCallback},
        buttonNextHTML: "",
        buttonPrevHTML: ""
    });

    if($("#carousel li").length>0){
        total_items=$("#carousel li").length;
        $("#carousel").css("width",parseInt(total_items)*inc_item);
    }

    //seleccionem el primer item de la llista
    $("#carousel li.jcarousel-item-1").addClass("select");

    //mostrem nomes el primer banner de la llista
    $("div").find(".banner-dest").hide();
    $("#banner-dest-1").show();
    //

    /*
    'durda' i 'auto' són 2 variables que rebem del backoffice
    durada, de lapso de temps, per defecte son 10 segons
    auto, si activem o no el carrusel automàtic, er defecte true
    */
    var durada = 10000;
    var durada2= durada*3;
    if (navegador == "Microsoft Internet Explorer") durada2= durada*3.1;
    var auto = true;
    if(auto) {
        temporizador1 = setInterval("auto_select()", durada);
        temporizador2 = setInterval("auto_scroll()", durada2);
    }
});


function auto_scroll()
{
    if(stop && pos>-(inc*((tot-3)/3))){
        stop=false;
        pos-=inc;
        item+=3;
            $("#carousel").animate({"marginLeft":pos},500,function(){
            stop=true;
        });
    }
}

function auto_select()
{
    if(item2<tot) {
        item2+=1;

        $("#carousel li").removeClass("select");
        $("#carousel li.jcarousel-item-"+item2).addClass("select");
        $("div").find(".banner-dest").hide();
        $("#banner-dest-"+item2).show();
    } else {
        if(typeof(temporizador2) != 'undefined') clearInterval(temporizador2);
    }
}

function left_scroll()
{
    if(stop && pos<0) {
        $(".next").append("<a title='Endavant' onclick='right_scroll();' href='javascript://'>Endavant</a>");
        stop=false;
        pos+=inc;
        item-=3;
            show_dest(item);
            $("#carousel").animate({"marginLeft":pos},500,function(){
            stop=true;
        });
    } else {
       if(typeof(temporizador1) != 'undefined') clearInterval(temporizador1);
    }
}

function right_scroll()
{
    if(stop && pos>-(inc*((tot-3)/3))) {
        $(".back").append("<a title='Endarrere' onclick='left_scroll();' href='javascript://'>Endarrere</a>");
        stop=false;
        pos-=inc;
        item+=3;
            show_dest(item);
            $("#carousel").animate({"marginLeft":pos},500,function(){
            stop=true;
        });
    }
}


function show_dest(id)
{
    //Se desactiva el automatismo
    if(typeof(temporizador1) != 'undefined') clearInterval(temporizador1);
    if(typeof(temporizador2) != 'undefined') clearInterval(temporizador2);
    //

    $("#carousel li").removeClass("select");
    $("#carousel li.jcarousel-item-"+id).addClass("select");

    $("div").find(".banner-dest").hide();
    $("#banner-dest-"+id).show();
    stop=true;
}
