var minLettersBeforeLookup = 2;
var inputObjValue;
var timer;
var grp;
var minValue;
var maxValue;
var groep_url;
var merk_url;
var page;
var sort = "";

function check_input() {
    // get value from searchfield
    groepId = "";
    // timeout function
    clearTimeout(timer);
    timer=setTimeout("ajax_showOptions()",800);
}

function ajax_showOptions(){
    if($('#zoeken').val().length >= minLettersBeforeLookup) {
        inputObjValue = $('#zoeken').val().replace(/ /g,"+");

        $('#container_search').html('<div style=\"text-align:center; margin-top: 100px; margin-bottom: 100px;\"><b>Momentje aub ...</b></div>');

        // hide container and show containerSearch
        //$('#container').css({display:'none'});
        $('#container_search').css({display:'block'});
        if(!$("#trans_back").length){
            $("body").append("<div id=\"trans_back\"></div>")
            $("#trans_back").css({ opacity: 0.5 });
        }

        // ajax
        $('#ajaxMessage').css({display:'block'})
        $('#container_search').load(ajax_list_externalFile + '?getZoeken=1&letters=' + inputObjValue,'',function(){
            ajax_complete('','');
        });
    }
}

function create_slider(minPrice, maxPrice, minValue, maxValue, groep, merk, pagenr) {
    page = pagenr;
    if(groep){
        groep_url = '&groep='+groep;
    }else{
        groep_url = "";
    }
    if(merk){
        merk_url = '&merk='+merk;
    }else{
        merk_url = "";
    }

    $("#ajaxlist_slider").slider({
        range: true, // necessary for creating a range slider
        min: minPrice, // minimum range of slider
        max: maxPrice, //maximimum range of slider
        values: [minValue, maxValue], //initial range of slider
        slide: function(event, ui) { // This event is triggered on every mouse move during slide.
            $("#amount").html('&euro; ' + ui.values[0] + ' - &euro; ' + ui.values[1]);//set value of  amount span to current slider values
        },
        stop: function(event, ui){//This event is triggered when the user stops sliding.
            minValue = ui.values[0];
            maxValue = ui.values[1];
            $('#ajaxMessage').css({display:'block'});
            $('#container_search').load(ajax_list_externalFile + '?getZoeken=1&letters=' + inputObjValue + '&minValue=' + minValue + '&maxValue=' + maxValue + sort + groep_url + merk_url,'',function(){
                ajax_complete(minValue,maxValue);
            });
        }
    });

    $("#amount").html('&euro; ' + $("#ajaxlist_slider").slider("values", 0) + ' - &euro; ' + $("#ajaxlist_slider").slider("values", 1));
}


// Maakt zoekveld leeg als je erop gaat staan
function cl(t){
    if (t.defaultValue==t.value) t.value = '';
}

// Zorgt ervoor dat browser niet zelf suggest in zoekveld laat zien
$(document).ready(function() {
    $('#zoeken').attr("autocomplete", "off");
});


function ajax_complete(min,max) {
    var minValue = min;
    var maxValue = max;
    $('#ajaxMessage').css({display:'none'});

    $('.ajaxlist_close').click(function() {
        $('#container_search').hide();
        $("#trans_back").remove();
        //$('#container').css({display:'block'});
    });


    // click outside
    $("#container_search").click(function(){ return false; });
    $(document).one("click", function() {
        $('#container_search').hide();
        $("#trans_back").remove();
    });


    if(maxValue){
        prijs = '&minValue=' + minValue + '&maxValue=' + maxValue;
    }else{
        prijs = "";
    }

    $('.option').click(function() {
        maxValue = max;
        var parent = $(this).closest("div").attr("id");
        var id = $(this).attr('id');

        if(parent=='gerelateerd'){
            $('#zoeken').val(id);
            ajax_showOptions();
        }else{
            if(parent=='groep'){
                var url_active = ajax_list_externalFile + '?getZoeken=1&letters=' + inputObjValue + prijs + sort + merk_url + '&groep=' + id;
                var url_inactive = ajax_list_externalFile + '?getZoeken=1&letters=' + inputObjValue + prijs + sort + merk_url;
            }
            if(parent=='merk'){
                url_active = ajax_list_externalFile + '?getZoeken=1&letters=' + inputObjValue + prijs + sort + groep_url + '&merk=' + id;
                url_inactive = ajax_list_externalFile + '?getZoeken=1&letters=' + inputObjValue + prijs + sort + groep_url;
            }

            if($(this).hasClass('active')){
                $('#container_search').load(url_inactive,'',function(){
                    $('#'+id).removeClass('active');

                    ajax_complete(minValue,maxValue);
                });
            }else{
                $('#container_search').load(url_active,'',function(){
                    $('#'+id).addClass('active');

                    ajax_complete(minValue,maxValue);
                });
            }
        }
    });


    $('.prevpage').click(function() {
        url = ajax_list_externalFile + '?getZoeken=1&letters=' + inputObjValue + prijs + groep_url + merk_url + sort + '&page=' + (page-1);
        $('#container_search').load(url,'',function(){
            ajax_complete(minValue,maxValue);
        });
    });

    $('.pagenr').click(function() {
        pagenr = $(this).html();
        url = ajax_list_externalFile + '?getZoeken=1&letters=' + inputObjValue + prijs + groep_url + merk_url + sort + '&page=' + pagenr;
        $('#container_search').load(url,'',function(){
            ajax_complete(minValue,maxValue);
        });
    });

    $('.nextpage').click(function() {
        url = ajax_list_externalFile + '?getZoeken=1&letters=' + inputObjValue + prijs + groep_url + merk_url + sort + '&page=' + (page+1);
        $('#container_search').load(url,'',function(){
            ajax_complete(minValue,maxValue);
        });
    });

    $('.sorteer').change(function() {
        if($('.sorteer').val()){
            sort = '&sort=' + $('.sorteer').val();
        }else{
            sort = "";
        }
        url = ajax_list_externalFile + '?getZoeken=1&letters=' + inputObjValue + prijs + groep_url + merk_url + sort;
        $('#container_search').load(url,'',function(){
            ajax_complete(minValue,maxValue);
        });
    });
}

function more_results(id) {
    if($('#'+id+' .extra_results').is(":visible")){
        $('#'+id+' .extra_results').hide();
        $('#'+id+' .meer_link').html('meer resultaten >');
    }else{
        $('#'+id+' .extra_results').show();
        $('#'+id+' .meer_link').html('minder resultaten <');
    }
}
