

var menuopen = false;
var openitem;
var menu;
var types;


function init(menuroot) {
	
	var loadedmenu = document.getElementById(menuroot);
	
	var teller = 0;
	
	menu = loadedmenu;
	
	types = new Array();
	
	types[0] = menu.getElementsByTagName('a');
	types[1] = menu.getElementsByTagName('div');
	types[2] = menu.getElementsByTagName('ul');
	types[3] = menu.getElementsByTagName('li');
	
	for( var i = 0; i < 4; i++ ) {
			
			
		for( var j = 0; j < types[i].length; j++ ) {
			
			
			
			types[i][j].onmouseover = function() {
				closeAll();
				openitem = this;
				menuover();
			}
			
			types[i][j].onmouseout = function() {
				menuout(menu);
			}
			
			teller++;
		}
		
	}
	
	
	menu.onmouseover = menuover;
	menu.onmouseout = menuout;
	
	
	
}



function closeAll() {
	
	for( var i = 0; i < types[2].length; i++ ) {
		types[2][i].style.display = 'none';
	}
	
}


function menuover() {
	setMenuOpened(true);
	over(openitem);
}


function menuout() {
	setMenuOpened(false);
	setTimeout(outcheck, 250);
}

function outcheck() {
	if( !menuopen ) {
		out(openitem);
		openitem = undefined;
	}
}

function setMenuOpened(opened) {
	menuopen = opened;
}


function over(what) {
	if( what !== null ) {
		if(ul = what.getElementsByTagName('ul')[0]) {
			ul.style.display = 'block';
		}
	}
}

function out(what) {
	try{
		if( what !== null && typeof(what) !== 'undefined') {
			var ul = what.getElementsByTagName('ul')[0];
			ul.style.display = 'none';
		}
	} catch( e ) {
		
	}
}




