window.onload=function()
{
	massagelinks(phocus.DOM.getnodes('div#body').node(0));
	mainmenu=new Menu(phocus.DOM.getnodes('div#nav ul').node(0));
}

function massagelinks(node)
{
	// get all the anchors
	var nodes=node.getnodes('a');
	
	// anchors
	nodes.setevent('focus',
		function()
		{
			this.blur();
		}
	)
}

function Menu(ul)
{
	this.ul=ul;
	
	this.overev=this.ul.setevent('mouseover',
			function (e)
			{
				var me=phocus.DOM.getETarget(e);
				var liel=me.parentNode;
				while(liel.parentNode!=null && liel.parentNode.id!='navul')
					liel=liel.parentNode;
				if(!liel.parentNode || liel.parentNode.id!='navul') return null;
				
				var liphocus=phocus.DOM.getNode(liel);
				
				var submenu=liphocus.getnodes('div.submenu').node(0);
				
				if(submenu)
				{
					mainmenu.open(liphocus,submenu);
				}
			});
								
	this.outev=this.ul.setevent('mouseout',
			function (e)
			{
				var me=phocus.DOM.getETarget(e);
				var mea=me;
				var liel=me.parentNode;
				while(liel.parentNode!=null && liel.parentNode.id!='nav')
					liel=liel.parentNode;
				while(mea.parentNode!=null && mea.parentNode.id!='navul')
					mea=mea.parentNode;
				if(!liel.parentNode || liel.parentNode.id!='nav') return null;
				
				var liphocus=phocus.DOM.getNode(liel);
				mea=phocus.DOM.getNode(mea);
				
				var submenu=mea.getnodes('div.submenu').node(0);
				
				if(submenu)
				{
					mainmenu.close(liphocus,submenu);
				}
			});
}
$pr=Menu.prototype;
$pr.close=function(liphocus,submenu)
{
	clearTimeout(this.timeout);
	
	this.isopen=false;
	if(this.openmenu==submenu)
	{
		this.openmenu=null;
		this.openli=null;
	}
	
	this.timeout=setInterval('mainmenu.doclose()',500);
}
$pr.doclose=function()
{
	clearInterval(this.timeout);
	
	var submenus=this.ul.getnodes('div.submenu');
	for(var i=0;i<submenus.length;i++)
	{
		var op=submenus.node(i);
		if(!this.openmenu || op.get('id') != this.openmenu.get('id'))
			op.set('display','none');
	}
	
	
	var as=this.ul.getnodes('a.mm');
	for(var i=0;i<as.length;i++)
	{
		var op=as.node(i);
		var classn=op.get('className');
		if(this.openli)
			var open=this.openli.getnodes('a.mm').node(0);
		if(!this.openli || op.get('id') != open.get('id'))
			op.set('className',classn.split('mm')[0]+' mm');
	}
}
$pr.open=function(liphocus,submenu)
{
	clearInterval(this.timeout);
		
	this.isopen=true;
	this.openmenu=submenu;
	this.openli=liphocus;
	
	this.doclose();
	
	var classn=this.openli.getnodes('a.mm').node(0).get('className');
	this.openli.getnodes('a.mm').set('className',classn.split('mm')[0]+' mm sel');
	
	if(submenu)
	{
		submenu.set('display','block');
	}
}

function Menuitem(li)
{
	this.li=li;
}


