$(function()
{
    $(".filter_cat input").live('click', function()
    {
        filterProducts(1);
    });
    
    $(".filter_color>div").live('click', function()
    {
		if($(this).attr('mysel')=="1")
			$(this).attr('mysel', '0');
		else
			$(this).attr('mysel', '1');
        filterProducts(2);
    });
    
    $(".filter_size input").live('click', function()
    {
        filterProducts(3);
    });
    
    $(".filter_form input").live('click', function()
    {
        filterProducts(4);
    });

    $(".locator > .lochead > .right > a").live('click', function()
    {
        if(!$(".locator > .lochead > .right > a").attr("href"))
        {
            $(".locator > .lochead > .right > a").removeClass("active");
            $(this).addClass("active");
            filterProducts(5);
        }
    });


    $(".filter_brand input").live('click', function()
    {
        filterProducts(6);
    });
    /*
    $("#filter_preissort_norm").live('click', function()
    {
        filterProducts(7);
    });
    
    $("filter_preissort_up").live('click', function()
    {
        filterProducts(7);
    });
    
    $("filter_preissort_down").live('click', function()
    {
        filterProducts(7);
    });
    */
});

function getSliderValues()
{
    document.cookie = "min=" + Slider.getValue(1) + "; path=/";
    document.cookie = "max=" + Slider.getValue(2) + "; path=/";
    document.cookie = "actcat=" + actCat + "; path=/";
    filterProducts(5);
}

function filterProducts(wo)
{
	//$('div#left').attr("disabled", "disabled");

    var _actCategory = actCat;
    
    if($(".locator > .lochead > .right").first().find("a.active").text() > $(".locator > .lochead > .right").last().find("a.active").text())
    {
        var _anzProSeite = $(".locator > .locbody > .left").first().find("a.active").text();
        var _seite = $(".locator > .lochead > .right").first().find("a.active").text();
    }
    else
    {
        var _anzProSeite = $(".locator > .locbody > .left").last().find("a.active").text();
        var _seite = $(".locator > .lochead > .right").last().find("a.active").text();
    }
    
    var _subClassArrayID = new Array();
    var _colorArrayName = new Array();
    var _sizesArrayName = new Array();
    var _formsArrayName = new Array();
    var _brandsArrayName = new Array();

    var _minprice = readCookie("min");//Slider.getValue(1);
    var _maxprice = readCookie("max");//Slider.getValue(2);
    
    $("#filter_subclasses li").each(function()
    {
        if($(this).find("input").attr("checked"))
        {
            _subClassArrayID[_subClassArrayID.length] = $(this).attr("id");
        }
    });
    
    $("#filter_colors>li>div").each(function()
    {
        if($(this).attr("mysel")=='1')
        {
			$(this).css({'border':'2px solid #FF9933', 'width':'31px', 'height':'13px'})
//			alert('select:'+ $(this).attr("id") + " - " + _colorArrayName.length);
            _colorArrayName[_colorArrayName.length] = $(this).attr("id");
        }else{
			$(this).css({'border':'1px solid #555', 'width':'33px', 'height':'15px'})
//			alert('deselect:' + $(this).attr("id") + " - " + _colorArrayName.length);
		}
    });
    
    $("#filter_sizes li").each(function()
    {
        if($(this).find("input").attr("checked"))
        {
            _sizesArrayName[_sizesArrayName.length] = $(this).attr("id");
        }
    });
    
    $("#filter_forms li").each(function()
    {
        if($(this).find("input").attr("checked"))
        {
            _formsArrayName[_formsArrayName.length] = $(this).attr("id");
        }
    });
    
    $("#filter_brand li").each(function()
    {
        if($(this).find("input").attr("checked"))
        {
            _brandsArrayName[_brandsArrayName.length] = $(this).attr("id");
        }
    });
    
    var load = "";
    var load = load + "<div id='load'>";
    var load = load + " <center>";
    var load = load + "  <label>Inhalt wird geladen...bitte warten...</label>";
    var load = load + "  <br />";
    var load = load + "  <img src='" + shopBaseUrl + "modules/filter/image/ajax-loader.gif' />";
    var load = load + " </center>";
    var load = load + "</div>";
    
    $("#productlistcontent").html(load);

	document.cookie = "sysColor_names=" + _colorArrayName.join("[![!]!]") + "; path=/";
    
    $.ajax(
    {
        type: 'POST',
        url: shopBaseUrl + 'modules/filter/filterProducts.php',
        data: 'cat_ids=' + _subClassArrayID +
              '&color_names=' + _colorArrayName +
              '&size_names=' + _sizesArrayName +
              '&form_names=' + _formsArrayName +
			  '&brand_names=' + _brandsArrayName +
              '&minprice=' + _minprice +
              '&maxprice=' + _maxprice +
              '&actCategory=' + _actCategory +
              '&searchparam=' + searchparam +
              '&aps=' + _anzProSeite +
              '&seite=' + _seite +
              ((wo == 7)?'&orderby=' + orderby:'') +
              ((wo == 7)?'&orderdir=' + orderdir:'') +
              ((wo == 8)?'&orderby=iiiresetiii':''),
        success: function(result)
        {
            if(result == "reload")
            {
                window.location.reload();
            }
            else
            {
                $("#productlistcontent").html(result);
            }
        }
    });
    
    if(wo != 7)
    {
        $.ajax(
        {
            type: 'POST',
            url: shopBaseUrl + 'modules/filter/filterProducts.php',
            data: 'cat_ids=' + _subClassArrayID +
                  '&color_names=' + _colorArrayName +
                  '&size_names=' + _sizesArrayName +
                  '&form_names=' + _formsArrayName +
    			  '&brand_names=' + _brandsArrayName +
                  '&minprice=' + _minprice +
                  '&maxprice=' + _maxprice +
                  '&actCategory=' + _actCategory +
                  '&searchparam=' + searchparam +
                  '&aps=' + _anzProSeite +
                  '&seite=' + _seite +
                  '&navigation=true',
            success: function(result)
            {
                $(".locator").remove();
                $("#productlistcontent").before(result);
                $("#productlistcontent").after(result);
            }
        });
        
        $.ajax(
        {
            type: 'POST',
            url: shopBaseUrl + 'modules/filter/filterProducts.php',
            data: 'cat_ids=' + _subClassArrayID +
                  '&color_names=' + _colorArrayName +
                  '&size_names=' + _sizesArrayName +
                  '&form_names=' + _formsArrayName +
    			  '&brand_names=' + _brandsArrayName +
                  '&minprice=' + _minprice +
                  '&maxprice=' + _maxprice +
                  '&actCategory=' + _actCategory +
                  '&searchparam=' + searchparam +
                  '&aps=' + _anzProSeite +
                  '&seite=' + _seite +
                  '&tree=true',
            success: function(result)
            {
                if(result == "reload")
                {
                    window.location.reload();
                }
                else
                {                       
                    var resultarray = result.split('\n');
    
//    $('#__debug__').html(result);
    
                    for(var i = 0;i < resultarray.length;i++)
                    {
    
                        var test = resultarray[i].substr(0, 4);
                        switch(test)
                        {
                            case 'cat:':
                                if(wo != 1)
                                {
                                    $("#filter_subclasses li").remove();
                                    $("#filter_subclasses .jspPane").html(resultarray[i].substr(4, resultarray[i].length - 4));
                                }
                                break;
                            case 'col:':
                                if(wo != 2)
                                {
                                    $("#filter_colors li").remove();
                                    $("#filter_colors").html(resultarray[i].substr(4, resultarray[i].length - 4));
                                    $("#filter_colors").append("<div style='clear:both;'></div>")
                                }
                                break;
                            case 'siz:':
                                if(wo != 3)
                                {
                                    $("#filter_sizes li").remove();
                                    $("#filter_sizes").html(resultarray[i].substr(4, resultarray[i].length - 4));
                                }
                                break;
                            case 'for:':
                                if(wo != 4)
                                {
                                    $("#filter_forms li").remove();
                                    $("#filter_forms").html(resultarray[i].substr(4, resultarray[i].length - 4));
                                }
                                break;
                            case 'pri:':
                                if(wo != 5)
                                {
    
    								$('div#slider').html('');
                                    var minmax = resultarray[i].substr(4, resultarray[i].length - 4).split(';');
                                    var min = Math.floor(minmax[0]);
                                    var max = Math.ceil(minmax[1]);
                                    var interval = Math.round((max - min) / 10);
                                    
                                    if(interval < 1)
                                    {
                                        interval = 1;
                                    }
                                    
                                    Slider.valueInterval    = interval;
                                    Slider.minVal           = parseInt(min);
                                    Slider.minVal2          = parseInt(min);
                                    Slider.maxVal           = parseInt(max);
                                    Slider.maxVal2          = parseInt(max);
                                    if(readCookie("actcat") == actCat)
                                    {
                                        Slider.valueDefault     = readCookie("min");
                                        Slider.valueDefault2    = readCookie("max");
                                    }
                                    else
                                    {
                                        Slider.valueDefault     = parseInt(min);
                                        Slider.valueDefault2    = parseInt(max);
                                    }
    
    
    								if(Slider.valueDefault<Slider.minVal){
    									Slider.valueDefault = Slider.minVal;
    								}
    
    								if(Slider.valueDefault2>Slider.maxVal){
    									Slider.valueDefault2 = Slider.maxVal;
    								}
    								
    
                                    Slider.drawInto('slider');
    
    
    
    /*
    								$('div#slider').html('');
                                    var minmax = resultarray[i].substr(4, resultarray[i].length - 4).split(';');
                                    var min = Math.floor(minmax[0]);
                                    var max = Math.ceil(minmax[1]);
                                    var interval = Math.round((max - min) / 90);
                                    
                                    if(interval < 1)
                                    {
                                        interval = 1;
                                    }
                                    
                                    Slider.valueInterval    = interval;
    
    								Slider.minVal           = parseInt(min);
                                    Slider.maxVal           = parseInt(max);
    
    								if(Slider.minVal > Slider.maxVal){
    									tmp = Slider.maxVal;
    									Slider.maxVal = Slider.minVal;
    									Slider.minVal = tmp
    								}
    								
    								if(Slider.minVal == Slider.maxVal){
    									Slider.minVal -= 1;
    									Slider.maxVal += 1;
    								}
    
    
    								Slider.minVal2          = Slider.minVal;
                                    Slider.maxVal2          = Slider.maxVal;
    
    
                                    if(readCookie("actcat") == actCat)
                                    {
                                        Slider.valueDefault     = readCookie("min");
                                        Slider.valueDefault2    = readCookie("max");
                                    }
                                    else
                                    {
                                        Slider.valueDefault     = Slider.minVal;
                                        Slider.valueDefault2    = Slider.maxVal;
                                    }
    
    								if(Slider.valueDefault < Slider.minVal)
    									Slider.valueDefault = Slider.minVal;
    
    								if(Slider.valueDefault2 > Slider.maxVal)
    									Slider.valueDefault2 = Slider.maxVal;
    
    								if(Slider.valueDefault > Slider.valueDefault2){
    									tmp = Slider.valueDefault2;
    									Slider.valueDefault2 = Slider.valueDefault;
    									Slider.valueDefault = tmp;
    								}
    
    								if(Slider.valueDefault == Slider.valueDefault2){
    									Slider.valueDefault -= 1;
    									Slider.valueDefault2 += 1;
    								}
    
    
    
    
    
    
    								Slider.drawInto('slider');
    // */
    
    
                                }
                                break;
                            case 'bra:':
                                if(wo != 6)
                                {
                                    $("#filter_brand li").remove();
                                    $("#filter_brand .jspPane").html(resultarray[i].substr(4, resultarray[i].length - 4));
                                }
                                break;
                        }
                    }
                    //*/
        	        var sett = { showArrows: true };
                	var jPane_new = $('.vertical_scrollable > ul');
                    jPane_new.jScrollPane(sett);
                    
                    $(".checkboxklasse").change(function()
                    {
                		if($(this).is(":checked"))
                        {
                			$(this).parent().find("label").addClass("checkboxlabelklasseselected");
                		}
                        else
                        {
                			$(this).parent().find("label").removeClass("checkboxlabelklasseselected");
                		}
                	});
                }
            }
        });
    }

	//$('div#left').attr("disabled", "");
}

function readCookie(name)
{
    name = $.trim(name);
    
    cookies = document.cookie;
    cookies = cookies.split(";");
    
    for(var i = 0;i < cookies.length;i++)
    {
        var zw = cookies[i].split("=");
        zw[0] = $.trim(zw[0]);
        zw[1] = $.trim(zw[1]);
        
        if(zw[0] == name)
        {
            return zw[1];
        }
    }
    return false;
}

