$(document).ready(function() {
    var s = location.search;
    var filter = {};
    if (s.indexOf("filter=") > 0) {
        s = s.slice(1);
        s = s.split("&");
        for (var x=0;x<s.length;x++) {
            qs = s[x].split("=");
            if (qs[0] == "filter") {
                var f = qs[1].split(" ");
                for (var y=0;y<f.length;y++) {
                    filter[f[y]] = 1;
                }
                break;
            }
        }
    } else filter  = 0;
    var open = undefined;
    if (s.indexOf("open=1") > 0) {
        open = 1;
    }
    $("ul.bios li").each(function(i) {
        if (filter) {
            var classes = $(this).attr("class").split(" ");
            var found = 0;
            for (var x=0;x<classes.length;x++) {
                found = filter[classes[x]];
                if (found) break;
            }
            if (!found) {
                $(this).hide();
                return;
            }
        }
        if (open) {
            $(this).addClass("open");
        }
        $(this).click(function() {
            $(this).toggleClass("open-hover");
            return false;
        }).hover(function() {
                if ($(this).hasClass("open")) {
                    $(this).removeClass("open").addClass("open-hover");
                } else {
                    $(this).addClass("hover");
                }
                $(this).css("cursor", "pointer");
            }, function() {
                if ($(this).hasClass("open-hover")) {
                    $(this).removeClass("open-hover").addClass("open");
                } else {
                    $(this).removeClass("hover");
                }
            }
        );
    });
    $("select#filter").change(function() {
        var sf = $(this).val();
        if (sf == "") $("ul.bios li").show();
        else {
            $("ul.bios li").hide();
            $("ul.bios li." + sf).show();
        }
    });
    for (var key in filter) {
        $("select#filter").val(key);    
        break;
    }
});