var product = {
    init: function() {
        var $clear = $('<span class="clear" title="Wyczyść filtr">zamknij</span>');
        var $val = $('#producerSel').val();
        this.filter($val);
        $('#assortmentmenu .active').parents('ul').removeClass('hidden subnav').addClass('visible')
            .end().parent().parent().addClass('subnav visible')
            .end().parents('ul').not('#assortmentmenu').not('#assortmentmenu > li > ul').before($clear)
            .end().parents('li').siblings().not('.top').removeClass('visible').addClass('hidden');
    },
    
    changeProducer: function() {
        var self = this;      
        $('#producerSel').change(function() {
            var $val = $(this).val();
            $.ajax({
                url: 'admin/jqueryfiles/session.php',
                data: 'action=save&name=selectedproducer&value=' + $val,
                type: 'GET',
                success: function() {
                    self.filter($val);
                }
            });
        })
    },
    
    filter: function($val) {
        var $lis = $('li', '#assortmentmenu');
        $('#assortmentmenu ul ul').addClass('subnav').find('ul').removeClass('visible').addClass('hidden');
        $('.subnav .clear').remove();
        if ($val === '') {
            $lis.removeClass('hidden').addClass('visible').css({display:''});
        } else {
            $lis.css({display:''});
            $lis.each(function() {
                var $li = $(this),
                    $rel = $li.attr('rel');
                $li.removeClass('visible').addClass('hidden');
                if ($rel) {
                    var arr = $rel.split(',');
                    if (arr.indexOf($val) !== -1) {
                       $li.removeClass('hidden').addClass('visible').parents('li').removeClass('hidden').addClass('visible').css({display:''});
                    } else {
                        $li.css({display:'none'});
                    }
                } else {
                   $li.css({display:'none'});
                }
            });
        }
    }
}

$(function() {
    if ($('#producerSel').length) {
        product.init();
        product.changeProducer();
    }
})
