var active_item = location.href.substring(location.href.lastIndexOf("/"));

/* Fix om er voor te zorgen dat ook bij het eerste bezoek
 * het menu goed wordt geinitialiseerd. */
if (active_item == "/")
{
    active_item = "/index.htm";
}

function MaakMenu() {
    var menu_item = document.getElementsByTagName("div");

    for (var i = 0; i != menu_item.length; i++) {
        if (menu_item[i].className == "menu_item") {
            var goto_link = menu_item[i].getElementsByTagName("a")[0].href;
						goto_link = goto_link.substr(goto_link.lastIndexOf("/"));

            if (goto_link != active_item) {
                menu_item[i].onmouseover = function() {
                    this.className = "menu_item_hilite";
                }
                menu_item[i].onmouseout = function() {
                    this.className = "menu_item";
                }
                menu_item[i].onclick = function() {
                    location.href = this.getElementsByTagName("a")[0].href;
                }
            }
            else {
                menu_item[i].className = "menu_item_hilite";
            }
        }
    }
}

function LoadPage(page) {
    LoadContent("loadPage", page);
}

/****************************************************************************
* - obj is het object waarvoor de parent gevonden moet worden.
* - tagName is de naam van de html tag die gevonden moet worden boven obj.
* - level is het aantal niveau's dat er gezocht moet worden naar tagName.
* Deze methode haalt voor elk object op de pagina de parent op. Als de 
* parent niet gevonden wordt, dan wordt de body terug gegeven zodat toch 
* altijd een object teruggevonden kan worden.
****************************************************************************/
function FindParentNode(obj
	, tagName
	, level) {
    var i = 0;

    while ((obj.tagName).toLowerCase() != 'body' &&
		i != level) {

        obj = obj.parentNode;
        if ((obj.tagName).toLowerCase() == tagName.toLowerCase()) {
            i++;
        }
    }
    return obj;
}

function LoadContent() {
    var args = this.LoadContent.arguments;
    var xmlHttp = null
    var div, i;
    var targetObject = document.getElementById("ajax_content_loader");

    xmlHttp = CreateRequestObject();

    /* args[0] = action
    * args[1] = page to load*/
    switch (args[0]) {
        case "loadPage":
            if (xmlHttp) {
                i = targetObject.childNodes.length;
                while (i > 0) {
                    targetObject.removeChild(targetObject.childNodes.item(0));
                    i--;
                }
                xmlHttp.onreadystatechange = function() {
                    if (xmlHttp.readyState == 4) {
                        try {
                            targetObject.innerHTML = xmlHttp.responseText;
                        }
                        catch (e) {
                            /* The browser failed to wrap the responseText 
                            * into another element. A new element is created 
                            * with the responseText and that element is appended
                            * to the _targetObject. */
                            div = document.createElement('div');

                            div.innerHTML = xmlHttp.responseText;
                            targetObject.appendChild(div);
                        }
                    }
                }
                xmlHttp.open("GET", args[1], true);
                xmlHttp.send(null);
            }
            break;
        case "clearSpan":
            i = targetObject.childNodes.length;
            while (i > 0) {
                targetObject.removeChild(targetObject.childNodes.item(0));
                i--;
            }
            break;
    }
}

function CreateRequestObject() {
    var request;

    if (window.XMLHttpRequest)
    { request = new XMLHttpRequest(); }
    else if (window.ActiveXObject) {

        var ie_versions = ["MSXML2.XMLHttp.5.0", "MSXML2.XMLHttp.4.0",
    "MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp",
    "Microsoft.XMLHttp"];

        for (var i = 0; i < ie_versions.length; i++) {
            try {
                request = new ActiveXObject(ie_versions[i]);
            }
            catch (error) { }
        }
    }

    return request;
}

