function IDMenuEvent() {}
IDMenuEvent = {
	openmenuparent:false,
	openmenulevel2parent:false,
	menu:false,
	oldonloadevent:false,
	timeout:1500,
	
	waitUntilDocumentReady:function(menu)
	{
		// connection menu if page is ready
		IDMenuEvent.menu = menu;		
		window.oldonload = window.onload;
		window.onload = IDMenuEvent.documentReady;
	},	
	documentReady:function()
	{
		var menuid = "nav";

		var menu = document.getElementById(menuid);
		if (!menu) throw "no menu found"
		var menulist = IDMenuEvent.menu.getList();
		var currentMenuItem = 0;
		for (var i=0; i<menu.childNodes.length; i++) {
			node = menu.childNodes.item(i);
			if (node.nodeName.toUpperCase()=="LI") {

				// ok. 1st level node found.
				// connection menuitem described in currentMenuItem				
				menulist[currentMenuItem].setStaticParent(findFirstTag(node,"A"));

				// select next menuitem
				// abort if finished
				currentMenuItem++;
				if (currentMenuItem>=menulist.length) return
			}
		}
		if (window.oldonload) window.oldonload();
	},
	hideOpenMenus:function(opendefault)
	{
		if (IDMenuEvent.openmenuparent) {			
			addClass(IDMenuEvent.openmenuparent,"hide");
			if (IDMenuEvent.openmenuparent.parentNode.oldonmouseout) IDMenuEvent.openmenuparent.parentNode.oldonmouseout();		
			IDMenuEvent.openmenuparent = false;
			
			// default oeffnen?
			if (typeof(opendefault)!="undefined" && opendefault) {
				if (IDMenuEvent.defaultopenlevel1) IDMenuEvent.defaultopenlevel1.onmouseover();
				if (IDMenuEvent.defaultopenlevel2) IDMenuEvent.defaultopenlevel2.onmouseover();
			}
		}
	},
	hideOpenMenusLevel2:function()
	{	
		if (IDMenuEvent.openmenulevel2parent) {
			addClass(IDMenuEvent.openmenulevel2parent,"hide");
			IDMenuEvent.openmenulevel2parent = false;
		}	
	},
	hideOpenMenusTimed:function()
	{
		IDMenuEvent.t = setTimeout("IDMenuEvent.hideOpenMenus(true)",IDMenuEvent.timeout);
	},
	hideOpenMenusLevel2Timed:function()
	{
		IDMenuEvent.t2 = setTimeout("IDMenuEvent.hideOpenMenusLevel2()",IDMenuEvent.timeout);
	}	
}

function findFirstTag(node,name)
{
	for (var i=0; i<node.childNodes.length; i++) {
		if (node.childNodes.item(i).nodeName==name) return node.childNodes.item(i);
	}
	return false;
}
