/* JS by Rine G. Carlsen and Peder Skou */
/* March/April 2008 */

var theMenus = new Array();

function prepareMenuItems() {
	if (!document.getElementById) return false;
	if (!document.getElementsByTagName) return false;
	var marginChildren = document.getElementById("margin").childNodes;
	for(var k=0;k<marginChildren.length;k++) {
		if(marginChildren[k].nodeName == 'UL') {
			theMenus.push(marginChildren[k].id);
		}
	}
	for(var i=0;i<theMenus.length;i++) {
		var menus = document.getElementById(theMenus[i]);
		initMenus(menus,i);
	}
}

function initMenus(menus,menuNum) {
	var listItems = menus.getElementsByTagName("li");
	for (var i = 0; i < listItems.length; i++) {
		if(listItems[i].childNodes.length > 1) {
			listItems[i].id = "activeMenu_" + menuNum + i;
			var subLists = listItems[i].getElementsByTagName("ul");
			for (var ii = 0; ii < subLists.length; ii++) {
				if (!subLists[ii].parentNode.className.match("selectedParent")) {//initialisering av siden
					subLists[ii].className = "invisible";
				} else {
					subLists[ii].className = "visible";
				}
			}
			var subLink = listItems[i].getElementsByTagName("a")[0];
			if (subLink.id !== "selectedFolder") {
				if (listItems[i].getElementsByTagName("ul").length > 0) {
					subLink.href = "javascript: showHide('" + listItems[i].id + "');";
				}
			//fjern linken dersom man ikke er på første nivå i menyen.
			//Er man på første nivå (f eks nyhetsarkiv): behold linken. Ola
			} else if(subLink.parentNode.parentNode.id !== menus.id) {
				linkContent = document.createElement("span");
				linkContent.className = "selectedFolder";
				linkContent.appendChild(document.createTextNode(subLink.firstChild.nodeValue));
				subLink.parentNode.replaceChild(linkContent, subLink);
			}
		}
	}
}
function isOffspring(nodeStart, searchId) {
	var listFinder = nodeStart.getElementsByTagName("li");
	var booTemp = nodeStart.parentNode.id == searchId;
	for (var i = 0; i < listFinder.length; i++) {
		if (listFinder[i].id == searchId && !booTemp) {
			booTemp = true;
			break;
		}
	}
	return booTemp;
}

function showHide(toggleId) {
	// Compatibility test
	if (!document.getElementById) return false;
	if (!document.getElementsByTagName) return false;
	// Close all open branches except current one
	for(var i=0;i<theMenus.length;i++) {
		var allLists = document.getElementById(theMenus[i]).getElementsByTagName("ul");
	for (var i = 0; i < allLists.length; i++) {
		if (!isOffspring(allLists[i], toggleId)) {
			allLists[i].className = "invisible";
		}
	}
	}
	// Toggle subbranch
	var subList = document.getElementById(toggleId).getElementsByTagName("ul")[0];
	if (subList.className == "invisible") {
		subList.className = "visible";
	} else {
		subList.className = "invisible";
	}
}
