// init menu when page loaded
Event.observe(window, 'load', function(){
	var nav = $('nav');
	
	var links = nav.adjacent('a');
	for (var i=0; i<links.length; i++){
		links[i].observe('mouseover', function(e){
			menu_over(this);
			e.stop();
		});
		links[i].observe('mouseout', function(e){
			menu_out();
			e.stop();
		});
	}
	links = nav.adjacent('li');
	for (var i=0; i<links.length; i++){
		var n = links[i].down('a');
		if (n){
			links[i].observe('mouseover', function(e){
				menu_over($(this).down('a'));
				e.stop();
			});
			links[i].observe('mouseout', function(e){
				menu_out();
				e.stop();
			});
		}
	}

	var n = nav;
	pos = menu_pos(n);
	n.parentNode.appendChild(new Element("div", {"style" : "height: 26px;"}));
	n.parentNode.removeChild(n);
	n.style.position = 'absolute';
	n.style.left = pos.x+'px';
	n.style.top = pos.y+'px';
	n.className = 'nav';
	document.body.appendChild(n);

});

function menu_pos(n){
	if (n.offsetParent){
		var res = menu_pos(n.offsetParent);
		res.x += n.offsetLeft;
		res.y += n.offsetTop;
		return res;
	}
	else {
		return {x:n.offsetLeft, y:n.offsetTop};
	}
}

var menu_to = -1;
function menu_over(n){
	n = $(n);
	window.clearTimeout(menu_to); menu_to = -1;
	var new_selected = [];
	var nn = n;
	//document.title = '';
	while (nn){
		new_selected.push(nn);
		//document.title += ','+nn;
		nn = nn.up('ul');
		if (!nn)break;
		nn = nn.previous('a');
		if (!nn)break;
	}

	nn = n.next('ul');
	if (nn){
		nn.style.display = 'block';
	}
	n.addClassName("selected");

	var selected = $('nav').adjacent('a.selected');
	for (var i=0; i<selected.length; i++){
		var f = false;
		for (var j=0; j<new_selected.length;j++){
			if (new_selected[j]==selected[i]){
				f=true;
				break;
			}
		}
		if (!f){
			n = selected[i].next('ul');
			if (n)n.style.display = 'none';
			selected[i].removeClassName('selected');
		}
	}
	
}
function menu_out(){
	//document.title = 'set timeout';
	window.clearTimeout(menu_to);
	menu_to = window.setTimeout("menu_hide();", 300);
}
function menu_hide(){
	//document.title = 'menu_hide!';
	var selected = $('nav').adjacent('a.selected');
	for (var i=0; i<selected.length; i++){
		var n = selected[i].next('ul');
		if (n)n.style.display = 'none';
		selected[i].removeClassName('selected');
	}
}
