var COLLAPSABLE_PARENT_NAME = "collapsable";
var COLLAPSABLE_PARENT_TYPE = "div";
var COLLAPSABLE_CHILD_TYPE = "ul";

init = function() {
    if(document.getElementById && document.createTextNode) {
        var entries = document.getElementsByTagName(COLLAPSABLE_PARENT_TYPE);
        for(i=0;i<entries.length;i++)
            if (entries[i].className==COLLAPSABLE_PARENT_NAME)
                assignCollapse(entries[i]);
        var links = document.getElementById('collapsable').getElementsByTagName('li');
        for(i=0;i<links.length;i++) {
        	var a = links[i].getElementsByTagName('a')[0];
        	if (a.href == window.location.toString()) {
        		links[i].className = 'current';
        	}
        }
    }
    rollover();
}

rollover = function () {
	var sfEls = document.getElementById(COLLAPSABLE_PARENT_NAME).getElementsByTagName("li");
    for (var i=0; i<sfEls.length; i++)
    {
    	sfEls[i].onmouseover=function()
        {
    		this.className += "over";
        }
        sfEls[i].onmouseout=function()
        {
        	this.className = this.className.replace(new RegExp("over"), "");
        }
     }
}

assignCollapse = function (div) {
    var button = div.getElementsByTagName('h4')[0];
    button.style.cursor='pointer';
    button.setAttribute('state', -1);

    
    button.onclick=function(){
        var state = -(1*this.getAttribute('state'));
        this.setAttribute('state', state);
        this.parentNode.getElementsByTagName(COLLAPSABLE_CHILD_TYPE)[0].style.display=state==1?'none':'block';
    };                   
    button.onclick();
}
window.onload=init;