var isOrderedBy = "";
var currentPage = 0;
var currentVin = 0;

function OpenVehicleDetail(href, vin)
{
    InitBodyContent();
    currentVin = vin;

    $('.content').loadingOverlay();
    TrackPage(href);

    $('#menu li a').removeClass('current');
    
    jQuery.ajax({
        type: "GET",
        url: href,
        success: function(response) {
            HideContent("content");
            SetContent("detail", response);
            HighlightVehicle(currentVin);
            
            // Facebook Refresh
            FB.XFBML.parse(); 
            
            // Twitter Refresh
            twttr.widgets.load()
            
        },
        error: function(xhr, ajaxOptions, thrownError)
        {
            SetContent("detail", thrownError);
        }
    });
}

function OpenStaticPage(link) {

    InitBodyContent();
    $('.content').loadingOverlay();

    //$('#menu li a').removeClass('current');
    //link.addClass('current');

    TrackPage(link.attr('href'));

    jQuery.ajax({
        async:false,
        type: "GET",
        url: link.attr('href'),
        success: function(response) {
            HideContent("detail");
            $("#detail").html("");
            SetContent("content", response);
            $('#menu li a').removeClass('current');
            link.addClass('current');
        },
        error: function(xhr, ajaxOptions, thrownError) {
            SetContent("content", thrownError);
        }
    });
}

function CloseVehicleDetail() {
    if ($('#body').find('.vehicle-list').length > 0)
    {
        ShowContent("content");
    }
    else
    {
        $('.body-content').addClass('hidden');
    }
    HideContent("detail");
    RefreshHighlights(false);

}

function GoToVehicleListPage(page) {
    Search(isOrderedBy, page);
}

function SetContent(containerId, content) {
    $('.loading').remove();
    ShowContent(containerId);
    $('#' + containerId).html(content);
}

function HideContent(containerId) {
    $('#' + containerId).hide();
}

function ShowContent(containerId) {
    $('#' + containerId).show();
}

function BreadcrumbSearch(href) {

    $('.content').loadingOverlay();

    jQuery.ajax({
        type: "GET",
        url: href,
        success: function(response) {
            SetContent("remote-control", response);
            Search("", 0);
            TrackPage(href);
        },
        error: function(xhr, ajaxOptions, thrownError) {
        }
    });

    var tab = href.split('/');

}

function SearchMarque(marque)
{
    InitBodyContent();

    $('#menu li a').removeClass('current');

    HideContent("detail");
    ShowContent("content");

    $('.content').loadingOverlay();

    jQuery.ajax({
        type: "POST",
        url: "vehicle-search.php",
        data: {
            Make:marque
        },
        success: function(response) {
            HideContent("detail");
            SetContent("content", response);
        },
        error: function(xhr, ajaxOptions, thrownError) {
            SetContent("content", thrownError);
        }
    });
}

function SearchMarqueModele(marque, modele)
{
    InitBodyContent();

    $('#menu li a').removeClass('current');

    HideContent("detail");
    ShowContent("content");

    $('.content').loadingOverlay();

    jQuery.ajax({
        type: "POST",
        url: "vehicle-search.php",
        data: {
            Make:marque,
            Models_name:modele
        },
        success: function(response) {
            HideContent("detail");
            SetContent("content", response);
        },
        error: function(xhr, ajaxOptions, thrownError) {
            SetContent("content", thrownError);
        }
    });
}

function Search(orderBy, page, position, sort )
{
    if(orderBy == "asc")
    {
        orderBy = "desc";
    }
    else
    {
        orderBy = "asc";
    }
    
    isOrderedBy = orderBy;
    currentPage = page;
    InitBodyContent();

    $('#menu li a').removeClass('current');

    HideContent("detail");
    ShowContent("content");

    $('.content').loadingOverlay();

    TrackPage("/Vehicle/Search?" + $('#search-vehicle-form').serialize() + "&orderBy=" + orderBy + "&page=" + page);

    if (position == null)
    {
        jQuery.ajax({
            type: "POST",
            url: "vehicle-search.php",
            data: $('#search-vehicle-form').serialize() + "&orderBy=" + orderBy + "&page=" + page + "&sort=" + sort,
            success: function(response) {
                HideContent("detail");
                SetContent("content", response);
                OnSearchSuccess(orderBy);
            },
            error: function(xhr, ajaxOptions, thrownError) {
                SetContent("content", thrownError);
            }
        });
    }
    else
    {
        searchArg = $('#search-vehicle-form').serialize();
        
        jQuery.ajax(
        {
            type: "POST",
            url: "vehicle-search.php",
            data: $('#search-vehicle-form').serialize() + "&orderBy=" + orderBy + "&page=" + page +"&position=" + position + "&sort=" + sort,
            success: function(response)
            {
                HideContent("detail");
                SetContent("content", response);
                OnSearchSuccess(orderBy);
            },
            error: function(xhr, ajaxOptions, thrownError)
            {
                SetContent("content", thrownError);
            }
        });
    }
    
}

function SeeSelection()
{
    InitBodyContent();

    $('#menu li a').removeClass('current');

    HideContent("detail");
    ShowContent("content");

    $('.content').loadingOverlay();
    
    jQuery.ajax({
        type: "POST",
        url: "vehicle-selection.php",
        data: "",
        success: function(response) {
            HideContent("detail");
            SetContent("content", response);
        //OnSearchSuccess(orderBy);
        }
    });
}

function OnSearchSuccess(orderBy) {
    orderBy = orderBy.toLowerCase().replace(' ', '');
    $('.orderby-' + orderBy + ' a').addClass('current');
}

function InitBodyContent() {
    $('.body-content').removeClass('hidden');
//$('.body-content').show();
//$('.body-content').animate({ width: '708px' });
}

function InitSearch(min0,max0,min1,max1, kmin0, kmax0, kmin1, kmax1)
{
    $("#Make").selectmenu("value",0);
    $('#Make').prev('.search-flag').removeClass('search-flag-on');

    $('#Models').selectmenu("value",0);
    $('#Models').prev('.search-flag').removeClass('search-flag-on');

    $('#FuelType').selectmenu("value",0);
    $('#FuelType').prev('.search-flag').removeClass('search-flag-on');
    
    $('#Gearbox').selectmenu("value",0);
    $('#Gearbox').prev('.search-flag').removeClass('search-flag-on');

    $('#slider_MinMileage_MaxMileage').customSlider('MinMileage','MaxMileage',min0,max0,min1,max1,2000);
    $('#MinMileage').val(min0);
    $('#MaxMileage').val(max0);

    $('#slider_MinPrice_MaxPrice').customSlider('MinPrice','MaxPrice',kmin0,kmax0,kmin1,kmax1,2000);
    $('#MinPrice').val(kmin0);
    $('#MaxPrice').val(kmax0);

    $('#Location').selectmenu("value",0);
    $('#Location').prev('.search-flag').removeClass('search-flag-on');
}

function RefreshHighlights(fromJavascript, vin)
{
    currentVin = vin;
    jQuery.ajax({
        type: "POST",
        url: "/Vehicle/Highlight",
        data: $('#search-vehicle-form').serialize() + '&FromJavascript=' + fromJavascript,
        success: function(response) {
            $('#slideshow-area .center').html(response);
            if (currentVin) {
                HighlightVehicle(currentVin);
            }
        },
        error: function(xhr, ajaxOptions, thrownError) {
            SetContent("content", thrownError);
        }
    });
}

function HighlightVehicle(vin)
{
    if ($('#slideshow-slider').hasClass('animate-false') && $('#slideshow-slider li').length > 0)
    {
        $('#slideshow-slider li a').removeClass('selected');

        link = $('#slideshow-slider li a').
        filter(function(index)
        {
            return $(this).attr('rel') == vin
        });

        link.addClass('selected');

        /*n = link.find('.slideshow-image').attr('rel');

        if (n) {
        p = (n * 588 * -1);
        $("#slideshow-slider ul").css({ marginLeft: p });
        }*/

        if (vin == link.parent().find('a').last().attr('rel') && link.parent().next('li').html() == null)
        {
            $('#link-next-vehicle').hide();
        }
        else
        {
            $('#link-next-vehicle').show();
        }

        if (vin == link.parent().find('a').first().attr('rel') && link.parent().prev('li').html() == null)
        {
            $('#link-prev-vehicle').hide();
        }
        else
        {
            $('#link-prev-vehicle').show();
        }
    }

/*alert(vin + " / " + $('#highlight-' + vin));

    // Créer une surbrillance sur les véhicules sélectionnées

    $('#slideshow-slider li a').filter(function(index)
    {
        return $(this).attr('rel') == vin
    }).addClass('selected');*/
}

function TrackPage(page) {
    try {
        if (SiteHasPageTracker)
        {
            pageTracker._trackPageview(page);
            console.log("Page tracker : %s - %o", page, this);
        }
        if (SiteHasMainTracker)
        {
            mainTracker._trackPageview(page);
            console.log("Main tracker : %s - %o", page, this);
        }
    }
    catch(err)
    {
    }
}
