var Nav = {
	timeout: null,
	
	records: 
	{
			"second": new Array(),
			"third": new Array()
 	},
 	
 	active: "",
 
	show: function(me, id, level) 
	{
		if (level == "second")
		{
			var mainnav = document.getElementById( "main_navigation" );
			
			var items = mainnav.getElementsByTagName("a");
			
			for(i = 0; i < items.length; i++)
			{
				var index = items[i].className.indexOf("active");
				
				if (index != -1)
					items[i].className = items[i].className.substring(0,index);
			}
			
			me.className += " active";
		}
		
		if (level != "third") 
		{
			for(i = 0; i < Nav.records[level].length; i++) 
			{
				try
				{
					var obj = document.getElementById( Nav.records[level][i] );
					
					obj.style.display = "none";
				} catch(e) {}
			}
		}
		
		for(i = 0; i < Nav.records["third"].length; i++)
		{
			try
			{
				var obj = document.getElementById( Nav.records["third"][i] );
				
				obj.style.display = "none";
			} catch(e){}
		}
		
		if (level == "third") {
			try
			{
				me.parentNode.className = "active";
				me.parentNode.style.display = "block";
				
				if (typeof Nav.active == "object")
				{
					Nav.active.parentNode.className = "";
				}
				
				Nav.active = me;
			} catch(e) {}
		}
	
		if (document.getElementById(id)) 
		{
			var obj = document.getElementById(id);
			
			obj.style.display = "block";
		}
	},
	
	getClass: function( str )
	{
		var tmp = str.split(" ");
		
		return tmp[0];
	},
	
	init: function() 
	{
		var mainNavs = document.getElementById("main_navigation").getElementsByTagName("a");
		
 		for(i = 0; i<mainNavs.length;i++)
 		{
			var className = Nav.getClass( mainNavs[i].className );
			
			mainNavs[i].id = "nav_"+i;
			
			var func = new Function("Nav.timeout = setTimeout( function() { Nav.show($(\"nav_"+i+"\"), \"" + className + "\", 'second'); }, 300);");
			var outfunc = function() { clearTimeout(Nav.timeout); }
			
			if ( mainNavs[i].attachEvent )
			{
				mainNavs[i].attachEvent( "onmouseover", func );
				mainNavs[i].attachEvent( "onmouseout", outfunc );
				
			} 
			else 
			{		
				mainNavs[i].onmouseover = func ;
				mainNavs[i].onmouseout = outfunc;
			}
				
 			if ( className ) {
 				Nav.records["second"][Nav.records["second"].length] = className;
 			}
 		}
 		
 		var secondNavs = document.getElementsByName("secondnav_link");
 		
 		for(i = 0; i < secondNavs.length; i++)
 		{
 			var classStr = secondNavs[i].className;
 			if (classStr == undefined) classStr = "";
			
			var className = Nav.getClass( classStr );
 		
			var func = new Function("Nav.show(this, \"" + className + "\", 'third');");
			
			if ( window.attachEvent )
			{
				secondNavs[i].attachEvent( "onmouseover", func );
			}
			else
			{
				secondNavs[i].onmouseover = func;	
			}
			
 			if ( className ) 
 			{
 				Nav.records["third"][Nav.records["third"].length] = className;
 			}
 		}
 	}
}

Nav.init();