//Hide/Unhide nested Listelements

//does wired shizzle
function addEventSimple( obj, type, fn ) {
 	if (obj.addEventListener)
 		obj.addEventListener( type, fn, false );
 	else if (obj.attachEvent) {
		obj['e'+type+fn] = fn;
 		obj[type+fn] = function() {
                 	obj['e'+type+fn]( window.event );
                         }
 		obj.attachEvent( 'on'+type, obj[type+fn] );
 	}
}


//calls function when the window is loaded
addEventSimple(window,"load",initPage);

function initPage () {
	hidestuff ();
         displaySelectedAnchor ();

}

//My sexy function that hides all the childs of the list
function hidestuff () {

	var x = document.getElementById('list');
	var browserName=navigator.appName;
	var browserVer=parseInt(navigator.appVersion);


         for (var i=0; i < x.childNodes.length; i++) {
//                 x.childNodes[i].firstChild.style.textDecoration = 'underline';
                 if (browserName=="Microsoft Internet Explorer" && browserVer<=5.5) {
                 	x.childNodes[i].firstChild.style.cursor = 'hand';
                 }
                 else {
                 	x.childNodes[i].firstChild.style.cursor = 'pointer';
                 }
                 addEventSimple(x.childNodes[i],"click",openClose)

         	for (var j=0; j < x.childNodes[i].childNodes.length; j++){

                         if (x.childNodes[i].childNodes[j].tagName == 'UL') {
                         	x.childNodes[i].childNodes[j].style.display = 'none'
                         }
                 }

         }
}

//opens or closes a listitem
function openClose () {

         for (var i=0; i < this.childNodes.length; i++){
         	if (this.childNodes[i].tagName == 'UL') {
                 	if(this.childNodes[i].style.display == 'none'){
                         	this.childNodes[i].style.display = 'block'
//                                 this.firstChild.style.backgroundColor = '#D1E0E7'

                         }
                         else {
                         	this.childNodes[i].style.display = 'none'
//                                 this.firstChild.style.backgroundColor = 'transparent'
                         }
                 }

         }
}

//foldout selected Anchor
function displaySelectedAnchor () {
         var url = window.location.toString();
         var selectedAnchorId = url.substring(url.lastIndexOf('#')+1, url.length);

         var selectedAnchor = document.getElementById(selectedAnchorId);

         if (selectedAnchor && selectedAnchor.nextSibling.tagName == 'UL') {
		selectedAnchor.nextSibling.style.display = 'block'
         }
        	if (selectedAnchor && selectedAnchor.tagName == 'A') {
//		selectedAnchor.style.backgroundColor = '#D1E0E7'
         }
}
