$(document).ready(function(){
    $("#noProductsLi").hide();
    function showAll(){
        $("#noProductsLi").hide();
        $("#product-list li").show();
        $("#product-list li").removeAttr("class");
    }
    function repagingProducts(){
        var counter = 0;
        jQuery.each($("#product-list li"), function(index, value){
            var classe = $(this).attr("class");
            if (classe != null && classe != 'undefined' && classe == 'notFilter') {
                // prodotto nascosto, metto id con pagina 0
                var id = $(this).attr("id");
                var splitted = id.split("_");
                $(this).attr("id", "page_0_" + splitted[splitted.length - 1]);
            }
            else {
                // prodotto visibie, aggiorno id con la giusta pagina
                counter++;
                var id = $(this).attr("id");
                var splitted = id.split("_");
                
                var pagina = parseInt(counter / 10) + 1;
                $(this).attr("id", "page_" + pagina + "_" + splitted[splitted.length - 1]);
            }
        });
        $("#pager li:eq(1)>a").click();
        if (counter > 0) {
            $("#noProductsLi").hide();
        }
        else {
            $("#noProductsLi").show();
        }
    }
    function updateFilter(value1, value2, value3){
        $.ajaxSetup({
            async: false
        });
        showAll();
        if (value1 != 'all') {
            $("#product-list li input[id^='" + value1 + "']").parent().parent().parent().parent().hide();
            $("#product-list li input[id^='" + value1 + "']").parent().parent().parent().parent().attr("class", "notFilter");
        }
        if (value2 != 'all') {
            $("#product-list li input[id^='" + value2 + "']").parent().parent().parent().parent().parent().hide();
            $("#product-list li input[id^='" + value2 + "']").parent().parent().parent().parent().parent().attr("class", "notFilter");
        }
        if (value3 != 'all') {
            if (value3 == 'fl_no_spesaamica') {
                $("#product-list li input[id^='" + value3 + "']").parent().parent().parent().parent().hide();
                $("#product-list li input[id^='" + value3 + "']").parent().parent().parent().parent().attr("class", "notFilter");
            }
            else {
                $("#product-list li input[id^='" + value3 + "']").parent().parent().parent().parent().parent().hide();
                $("#product-list li input[id^='" + value3 + "']").parent().parent().parent().parent().parent().attr("class", "notFilter");
            }
        }
        repagingProducts();
        $.ajaxSetup({
            async: true
        });
    }
    jQuery.each($("select[id^='filterList']"), function(index, value){
        $(this).change(function(){
            var value1 = $("#filterList1").val();
            var value2 = $("#filterList2").val();
            var value3 = $("#filterList3").val();
            updateFilter(value1, value2, value3);
        });
    });
    
    jQuery.each($("input[id^='show-store']"), function(index, value){
        $(this).click(function(){
            $.ajaxSetup({
                async: false
            });
            jQuery.each($("a[id^='pdvLink']"), function(index, value){
                $(this).attr("href", "");
                $(this).text("");
            });
            var codiceAziendale = $(this).attr("id");
            codiceAziendale = codiceAziendale.substring(11, codiceAziendale.length);
            if ($("#postal-code_" + codiceAziendale).val() != null && $("#postal-code_" + codiceAziendale).val().length == 5) {
                $.getJSON("/AjaxRpc/flyerManager.retrieveNearestPdvWithPromotion?cap=" + $("#postal-code_" + codiceAziendale).val() + "&codiceAziendale=" + codiceAziendale, null, function(data, textstatus){
                    if (data.result) {
                        var risultato = data.data.split("::");
                        if (risultato != null && risultato != '') {
                            var j = 1;
                            for (var i = 0; i < risultato.length - 1; i++) {
                                $("#pdvLink" + (j) + "_" + codiceAziendale).text(risultato[i]);
                                i++;
                                $("#pdvLink" + (j) + "_" + codiceAziendale).attr("href", risultato[i]);
                                $("#pdvLink" + (j) + "_" + codiceAziendale).show();
                                j++;
                            }
                        }
                        else {
                            $("#pdvLink1_" + codiceAziendale).text("Il prodotto non è in promozione nelle vicinanze");
                            $("#pdvLink1_" + codiceAziendale).removeAttr("href");
                        }
                    }
                    else {
                        $("#pdvLink1_" + codiceAziendale).text("Il prodotto non è in promozione nelle vicinanze");
                        $("#pdvLink1_" + codiceAziendale).removeAttr("href");
                    }
                    $("#pop-extract1_" + codiceAziendale).show();
                });
            }
            else {
                $("#pdvLink1_" + codiceAziendale).text("Inserire un codice CAP valido");
                $("#pdvLink1_" + codiceAziendale).removeAttr("href");
                $("#pop-extract1_" + codiceAziendale).show();
            }
            $.ajaxSetup({
                async: true
            });
        });
    });
});
