

function initMenus() {
	if (!document.getElementsByTagName) return;
	
	var aMenus = document.getElementsByTagName("LI");
	for (var i = 0; i < aMenus.length; i++) {
		var mclass = aMenus[i].className;
		if (mclass.indexOf("treenode") > -1) {
				
			var submenu = aMenus[i].childNodes;			
			
			if ( submenu.length == 1  )
			{
				submenu[0].className = (mclass.indexOf("open") > -1) ? "treeopen" : "treeclosed";
			}
			else
			{			
				for (var j = 0; j < submenu.length; j++) {
					if (submenu[j].tagName == "A") {

						submenu[j].onclick = function() {
						
							// this is to close the menus before opening
							// the new one
							var cMenus = document.getElementsByTagName("LI");
							for (var i = 0; i < cMenus .length; i++) {
								var cclass = cMenus [i].className;
								if (cclass.indexOf("treenode") > -1) {
											
									var submenuclose = cMenus[i].childNodes;
									
									if ( submenuclose.length > 1  )																		
									{	
										for (var c = 0; c < submenuclose.length; c++) {
											if (submenuclose[c].tagName == "UL" &&
											    submenuclose[c] != this.nextSibling
											   ) {
												submenuclose[c].style.display = "none";
												//submenuclose[c].className = "treeclosed";
											}
										}
									
									}
								}
							}
						
							// this is to open or close the selected menu
							var node = this.nextSibling;

							while (1) {
								if (node != null) {
									if (node.tagName == "UL") {
										var d = (node.style.display == "none")
										node.style.display = (d) ? "block" : "none";
										this.className = (d) ? "treeopen" : "treeclosed";
										return false;
									}
									node = node.nextSibling;
								} else {
									return false;
								}
							}
							return false;
						}

						submenu[j].className = (mclass.indexOf("open") > -1) ? "treeopen" : "treeclosed";						
					}

					if (submenu[j].tagName == "UL")
						submenu[j].style.display = (mclass.indexOf("open") > -1) ? "block" : "none";
				}
			}
		}
	}
}

window.onload = initMenus;