var IE = !!(window.attachEvent && !window.opera);

function DropDownMenu(id) {
	var id;
	var menu;
	
	function toggleSM(node) {
		var menuItemsChildren = node.childNodes;
		var i=0;
		var submenuFound = false;
		while (i<menuItemsChildren.length && !submenuFound) {
			if (menuItemsChildren[i].nodeName === "UL") {
				submenuFound = true;
				if (menuItemsChildren[i].style.display === "block") {
					menuItemsChildren[i].style.display = "none";
					if (IE) node.style.marginBottom = "0";
				}
				else {
					menuItemsChildren[i].style.display = "block";
					if (IE) node.style.marginBottom = "-3px";
				}
			}
			i++;
		}
	}
	function hasSM(node) {
		var nodeChildren = node.childNodes;
		var i=0;
		var submenuFound = false;
		while (i<nodeChildren.length && !submenuFound) {
			if (nodeChildren[i].nodeName === "UL")
				submenuFound = true;
			i++
		}
		return submenuFound;
	}
	
	this.init = function() {
		this.id = id;
		this.menu = document.getElementById(this.id);
		
		tweakMenu()
		
		var menuItems = this.menu.childNodes;
		for (var i=0;i<menuItems.length;i++) {
			if (menuItems[i].nodeName === "LI") {
				menuItems[i].onmouseover = function(event) {
					toggleSM(this);
				}
				menuItems[i].onmouseout = function(event) {
					toggleSM(this);
				}
				var menuItemsChildren = menuItems[i].childNodes;
				for (var j=0;j<menuItemsChildren.length;j++) {
					if (menuItemsChildren[j].nodeName === "UL") {
						var submenuItems = menuItemsChildren[j].childNodes;
						for (var k=0;k<submenuItems.length;k++) {
							if (submenuItems[k].nodeName === "LI") {
								if (hasSM(submenuItems[k])) {
									var attributeName;
									if (IE)
										attributeName = 'className';
									else
										attributeName = 'class';
									submenuItems[k].setAttribute(attributeName,'hasChild');
									submenuItems[k].onmouseover = function(event) {
										toggleSM(this);
									}
									submenuItems[k].onmouseout = function(event) {
										toggleSM(this);
									}
								}
							}
						}
					}
				}
			}
		}
	}
	
	function tweakMenu(){
		this.menu = document.getElementById('menu1');
		var menuItems = this.menu.childNodes;
		var totalLI = 0;
		for (var i=0;i<menuItems.length;i++) { if (menuItems[i].nodeName == "LI") { totalLI++; } }
		var LIcounter = 0;
		for (var i=0;i<menuItems.length;i++) {
			if (menuItems[i].nodeName == "LI")
			{
				LIcounter++;
				menuItems[i].className = "menucolor" + LIcounter;
				menuItems[i].style.zIndex =(100-LIcounter);
				//menuItems[i].style.color = 'silver'
				var level2_Items = menuItems[i].childNodes;
				for (var k=0;k<level2_Items.length;k++) {
					if (level2_Items[k].nodeName == "UL"){
						var level2_li = level2_Items[k].childNodes;
						var totalLI_2 = 0;
						for (var w=0;w<level2_li.length;w++) { if (level2_li[w].nodeName == "LI"){ totalLI_2++; } }
						var newLi = document.createElement("LI");
						newLi.innerHTML = '<img src="/sibos2009/res/images/bot_menuColor' + LIcounter + '.gif" width="105" height="29">';
						level2_Items[k].appendChild(newLi);
						
						for (var w=0;w<level2_li.length;w++) { 
							if (level2_li[w].nodeName == "LI"){ 
								var level3_Items = level2_li[w].childNodes;
								for (var x=0;x<level3_Items.length;x++) {
									if (level3_Items[x].nodeName == "UL"){
										var level3_li = level3_Items[x].childNodes;
										var totalLI_3 = 0;
										for (var y=0;y<level3_li.length;y++) { if (level3_li[y].nodeName == "LI"){ totalLI_3++; } }
										var newLi = document.createElement("LI");
										newLi.innerHTML = '<img src="/sibos2009/res/images/bot_menuColor' + LIcounter + '.gif" width="105" height="29">';
										level3_Items[x].appendChild(newLi);
									}
								}
							} 
						}
					}
				}
			}
		}
	}
	//this bit sets the highlight on the default section
	var currentSection = 0;
	for (var i=0;i<sections.length;i++) {
		for (var z=0;z<sections[i].length;z++) {
			if(location.href.indexOf(sections[i][z]) > 0) currentSection = i + 1;
		}	
	}

	this.menu = document.getElementById('menu1');
	var menuItems = this.menu.childNodes;
	var LIcounter = 0;
	for (var i=0;i<menuItems.length;i++) {
		if (menuItems[i].nodeName == "LI")
		{
			LIcounter++;
			if(LIcounter == currentSection){
				menuItems[i].style.backgroundImage = "url(/sibos2009/res/images/menuColor" + LIcounter + ".gif)";
				menuItems[i].style.backgroundRepeat = "no-repeat";
				menuItems[i].childNodes[0].innerHTML = '<font color="' + colorPalette[LIcounter-1] + ';">' + menuItems[i].childNodes[0].innerHTML + '</font>';
				break;
			}
		}
	}	
}
