/*
	Expandable Listmenu Script
	Author : Daniel Nolan
	http://www.bleedingego.co.uk/webdev.php
*/
clicktime = 0;

function initMenus() {
	if (!document.getElementsByTagName) return;
	
	var aMenus = document.getElementsByTagName("LI");
	i = 0;
	for (i = 0; i < aMenus.length; i++) {
		var mclass = aMenus[i].className;
		if (aMenus[i].id == "sp1") {
			
		}
		else if (mclass.indexOf("treenode") > -1) {
			var submenu = aMenus[i].childNodes;
			for (var j = 0; j < submenu.length; j++) {
				if (submenu[j].tagName == "A") {
					submenu[j].onmouseout = function() {
						onElm = 0;
					}
					submenu[j].onmouseover = function() {
						ths = this;
						onElm = 1;
						
						soon = setTimeout(function() {
							if (( ( (new Date().getTime()) - clicktime ) > 400) && onElm == 1) {
								if (window.soon) { clearTimeout(soon); }
									var node = ths.nextSibling;
														
									while (1) {
										if (node != null) {
											if (node.tagName == "UL") {
	
												node.style.display = "block";
												ths.className = "treeopen";
												break;
											}
											node = node.nextSibling;
										}
										else {
											break;
										}
									}
							}
						}, 750);
						return false;
					}
						
					submenu[j].onclick = function() {
						if (window.soon) { clearTimeout(soon); }
						var node = this.nextSibling;
											
						while (1) {
							if (node != null) {
								if (node.tagName == "UL") {
									clicktime = new Date().getTime();
									var d = (node.style.display == "none");
									node.style.display = (d) ? "block" : "none";
									this.className = (d) ? "treeopen" : "treeclosed";
									//node.style.display = "block";
									//this.className = "treeopen";
									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;