
var search_offset = 0;

$(document).ready(function(e){

    if($('#searchform').length > 0) {
        filter_accus();
    }
    
});

function remove_filter(filter) {

    $('#' + filter).show();
    $('#selected_key_' + filter).remove();

    $('#' + filter + ' option:first').attr('selected', 'selected');

    filter_accus();

}

function filter_accus() {

    $('.listview').html('<p><img src="/images/loading.gif" style="float: left; margin-right: 10px; margin-top: -5px" />Bezig met laden.. een moment geduld a.u.b.</p>');

    var params = $('#searchform select').serialize();

    $.post('/ajax',
    {
            params: params,
            search_subgroup_id: $('#search_subgroup_id').val(),
            search_offset: search_offset,
            post_action: 'filter_accus'
    },

        function (data) {filter_results(data);}
    ,

    'json'
    );
}

function filter_results(data)
{
    
    
    $('#search_terms').empty();
    $('.search_term_selected').remove();

    $.each(data.search_parameters, function(i,item) {
        if(item.field) {
            if(item.value.length > 0) {
                $('#' + item.key).hide();
                //$('<span class="search_attribute"><strong>' + item.field + ' :</strong> ' + item.value + '</span>').appendTo($('#search_terms'));
                $('#' + item.key).after('<span class="search_term_selected" id="selected_key_' +  item.key + '"><strong>Geselecteerd:</strong> ' + item.value + ' <a href="javascript:void(0)" onclick="javascript:remove_filter(\'' +  item.key  + '\')" class="remove_search_attribute">x</a></span>');
            }
        }
    });    

    if (data.succes == false) {
        $('#num_products_found').empty();
        $('#num_products_found').removeClass('notice');
        $('.listview').html('<div class="error-notice" style="color: red"><p>Geen resultaten gevonden</p></div>');
        return;
    }
    
    if(data.count == 0) {

        $('#num_products_found').empty();
        $('#num_products_found').removeClass('notice');
        $('.listview').html('<div class="error-notice" style="color: red"><p>Geen resultaten gevonden</p></div>');

    } else {

        $.each(data.filters, function(i,item) {

            if($('#' + item.key).css('display') != 'none') {

                $('#' + item.key).empty();
                $('<option value="">Maak uw keuze...</option>').appendTo($('#' + item.key));

                $.each(item.options, function(i,option) {
                    if($('#' + item.key).is("select")) {
                        $('<option value="' + option.value + '">' + option.value + ' ' + $('#' + item.key).attr('rel') + '</option>').appendTo($('#' + item.key));
                    }
                });
            }
        });

        $('.listview').html(data.html);
        $('#num_products_found').addClass('notice');

        if(data.count == 1) {
            $('#num_products_found').html('<span class="notice-icon"></span> <p>' + data.count + ' van de ' + $('#total_subgroup_products').val() + ' producten gevonden die voldoet aan uw zoektermen</p>');
        } else {
            $('#num_products_found').html('<span class="notice-icon"></span> <p>' + data.count + ' van de ' + $('#total_subgroup_products').val() + ' producten gevonden die voldoen aan uw zoektermen</p>');
        }

    }
}

