var ddMenu = {
	init : function() {
		$j( "#global-nav a.has-child" ).each(function( i ) {
			var menu = $j( ".dd-lvl1:eq(" + i + ")" );
			var $jthis = this;
			menu.find( "li" ).each(function() {
				$j( this ).hover(function() {
					ddMenu.showMenu( menu, $jthis );
					ddMenu.showSubMenu( $j( this ).find( "ul" ) );
				}, function() {
					if ( $j( this ).parent().hasClass( "dd-lvl1" ) ) {
						ddMenu.hideMenu( menu, $jthis );
					}
					ddMenu.hideSubMenu( $j( this ).find( "ul" ) );
				});
			});
			$j( this ).hover(function() {
				ddMenu.showMenu( menu, this );
			}, function() {
				ddMenu.hideMenu( menu, this );
			});
		});
		$j( "#global-nav a" ).mouseover(function() {
			$j( ".dd-lvl1" ).css( "visibility", "hidden" );
		});
	},
	showMenu : function( menu, nav ) {
		window.clearTimeout( ddMenu.menuTimer );
		ddMenu.menuTimer = window.setTimeout(function() {
			$j( "#global-nav a" ).each(function() {
				if ( !$j( this ).hasClass( "current-page" ) ) {
					$j( this ).removeClass( "active" );
				}
			});
			$j( nav ).addClass( "active" );
			menu.css( "visibility", "visible" );
		}, 500 );
	},
	hideMenu : function( menu, nav ) {
		window.clearTimeout( ddMenu.menuTimer );
		ddMenu.menuTimer = window.setTimeout(function() {
			if ( !$j( nav ).hasClass( "current-page" ) ) {
				$j( nav ).removeClass( "active" );
			}
			menu.css( "visibility", "hidden" );
		}, 500 );
	},
	menuTimer : null,
	showSubMenu : function( menu ) {
		menu.css( "visibility", "visible" );
	},
	hideSubMenu : function( menu ) {
		menu.css( "visibility", "hidden" );
	}
};
$j(function() {
	ddMenu.init();
});