document.getElementsByClassName = function (needle){
    var s = [document.documentElement || document.body], i = 0, r = [], l = 0, e;
    var re = new RegExp('(^|\\s)' + needle + '(\\s|$)');

    do{
        e = s[i];

        while (e){
            if (e.nodeType == 1){
                if (e.className && re.test(e.className)) r[l++] = e;

                s[i++] = e.firstChild;
            }

            e = e.nextSibling;
        }
    }
    while (i--);

    return r;
}

var activecat,activeitem,themas,items, clicks;

function showCat(layer, state){
    document.getElementById("cats").style.display = "block";
    document.getElementById("keuze").style.display = "none";

    state = state == undefined?"block":state;
    if(activecat && state != "none")
    {
        themas = document.getElementById(layer).getElementsByTagName("ul");
        for(var i =0; i<themas.length;i++)
        {
            themas[i].style.display = "none";
        }
        
        showCat(activecat,"none");
    }

    items     = layer.split("/");
    activecat = layer;
    document.getElementById("wijzer"+items[0]).style.display = state;
    document.getElementById(layer).style.display = state;

    document.getElementById("btn"+layer).className = state == "none"?"":"active";
}
function showItem(layer, state){
    state = state == undefined?"block":state;
    if(activeitem && state != "none")
    {
        showItem(activeitem,"none");
    }

    activeitem  = layer;
    document.getElementById(layer).style.display = state;
}

function showCard(cards, thema)
{
    document.getElementById("naamkaartjes").style.display = "block";
    allreadyCards = document.getElementById("naamkaartjes").getElementsByTagName("li");
    for(var j=0; j<allreadyCards.length; j++)
    {
        allreadyCards[j].style.display = "none";
        clicks = document.getElementsByClassName("click");
        for(var k=0; k<clicks.length; k++)
        {
            clicks[k].style.display = "none";
        }
    }
    
    if(cards)
    {
        for(var i=0; i<cards.length; i++)
        {
            document.getElementById("naamkaartje"+cards[i]).style.display = "block";
            document.getElementById("click"+cards[i]+thema).style.display = "block";
        }
    }
}

function initWijzer(){
    var layers    = "";
    var urlpieces = document.location.toString().split("#");
    if(urlpieces[1])
    {
        document.getElementById("cats").style.display = "block";
        document.getElementById("keuze").style.display = "none";
        var sections  = urlpieces[1].split("/");
        if(sections[1])
        {
            for(var i=0; i<sections.length; i++)
            {
                layers += (layers!=""?"/":"")+sections[i];
                if(document.getElementById(layers))
                {
                    document.getElementById(layers).style.display = "block";
                }
                if(document.getElementById("wijzer"+layers))
                {
                    document.getElementById("wijzer"+layers).style.display = "block";
                }
            }
        }
        else if(urlpieces[1]){
            activecat = urlpieces[1];
            if(document.getElementById(urlpieces[1]))
            {
                document.getElementById(urlpieces[1]).style.display = "block";
            }
            if(document.getElementById("wijzer"+urlpieces[1]))
            {
                document.getElementById("wijzer"+urlpieces[1]).style.display = "block";
            }
        }
        
    }
}