
//requires jQuery library

//set main nav funtionality as an object literal
oMainNav = 
{
	
	//set up once
	fInit : function()
	{
		
		//find mainNav list elements - first level
		var myMainNavList = oMainNav.fGetSubMenus();//$( 'ul.mainNav li > ul' );
		
		//iterate through list and set up elements
		for( var i = 0; i < myMainNavList.length; i++ )
		{
			//get this main nav unordered list
			var myNavUl = myMainNavList[i];
			
			var myNavUlParentLi = $(myNavUl).parent()[0];
			
			var myNavLink = $( 'a' , myNavUlParentLi )[0];
			
			//$( myNavLink ).mouseover( function(){ oMainNav.fShowMenu( $( myNavLink )[0] ); } );
			$( myNavLink ).bind( 'mouseover', function(event){ oMainNav.fShowMenu( event ); EventUtil.fTrapEvent( event ); } );
			
			$( myNavUl ).bind( 'mouseover', function(event){ EventUtil.fTrapEvent( event ); } );
			
		};//end for
		
		//set document to hide all menus by default
		$( document ).bind( 'mouseover', function(event){ oMainNav.fHideAllMenus(); } );
		
	}//end function fInit
	,
	//handles showing a menu
	fShowMenu : function( pmEvent )
	{
		myEvent = pmEvent;
		
		var myLink = EventUtil.fGetTarget( myEvent );//myEvent.target;
		
		var myLinkParentLi = $(myLink).parent()[0];
		
		//var myNavUl = $( "ul" , myLinkParentLi )[0];
		
		$(myLinkParentLi).addClass( 'active' );
		
		//alert( myNavUl );
	}//end function fShowMenu
	,
	fHideMenu : function( pmParentLi )
	{
		var myParentLi = pmParentLi;
		
		//var myNavUl = $( "ul" , myParentLi )[0];
		
		$(myParentLi).removeClass( 'active' );
		
		//alert(myParentLi);
	}//end function fHideMenu
	,
	//handles hiding all menus
	fHideAllMenus : function()
	{
		//find mainNav list elements
		var myMainNavList = oMainNav.fGetSubMenus();
		
		//iterate through list and set up elements
		for( var i = 0; i < myMainNavList.length; i++ )
		{
			//get this main nav unordered list
			var myNavUl = myMainNavList[i];
			
			var myNavUlParentLi = $(myNavUl).parent()[0];
			
			oMainNav.fHideMenu( myNavUlParentLi );
		};//end for
		
	}//end function fHideAllMenus
	,
	//handles returning a list of sub menus
	fGetSubMenus : function()
	{
		//find mainNav list elements - first level
		var myMainNavList = $( 'ul.mainNav li > ul' );
		
		return( myMainNavList );
	}//end function
	
};//end oMainNav

//initialise
$(document).ready( function () { oMainNav.fInit(); } );
