// Menu


var menuImages = new Image();

function preload_menu_assets() {
	
	// Set the images to preload - i.e. everything used in the menu's css file
	images = new Array();
	images[0]="images/main-menu-v2/mmxxx-level-1-plus-blue.gif";
	images[1]="images/main-menu-v2/mm-level-1-minus-blue.gif";
	images[2]="images/main-menu-v2/mm-level-2-plus-blue.gif";
	images[3]="images/main-menu-v2/mm-level-2-minus-blue.gif";
	images[4]="images/main-menu-v2/mm-level-1-plus-gray.gif";
	images[5]="images/main-menu-v2/mm-level-1-minus-gray.gif";
	images[6]="images/main-menu-v2/mm-level-2-plus-gray.gif";
	images[7]="images/main-menu-v2/mm-level-2-minus-gray.gif";
	
	// Pre-load images
	var i = 0;
	for(i=0; i<=7; i++) {
	  menuImages.src=images[i];
	}
} 


var menuSlideSpeed = 100;

function init_menu_click() {
	
	// Hide the sub levels of menu items that are closed
	// Next should be a <ul> tag
	$('a.closed').next().hide();
	
	//alert($('ul.level-2 li:last-child').html());//.addClass("no-bottom-border");
	$('ul.level-2 li:last-child').addClass("no-bottom-border");
	//$("li:last").css({backgroundColor: 'yellow', fontWeight: 'bolder'});

		
	// Only apply an on click event to the anchor with more class
	$('a.level-1, a.level-2').click(function() {
		
		// Get the next un-ordered list (we'll check for this next)
		var childList = $(this).next();	

		// Determine if the list is open or not
		if(childList.is('ul.level-2')) {
			if(childList.is(':visible')) { // collapse menu				
				// The list is OPEN
				
				childList.slideUp(menuSlideSpeed);
				$(this).removeClass("open");			
				$(this).addClass("closed");

			} else if(!childList.is(':visible')) { // expand menu
				// The list is CLOSED
				
				// Close any open lists
				// Switch open to close
				$("a.level-1").removeClass("open");			
				$("a.level-1").addClass("closed");
				// Slide up any child ul's
				$("ul.level-2").slideUp(menuSlideSpeed);				
				
				$("a.level-2").removeClass("open");			
				$("a.level-2").addClass("closed");
				$("ul.level-3").slideUp(menuSlideSpeed);
								
				childList.slideDown(menuSlideSpeed);				
				$(this).removeClass("closed");			
				$(this).addClass("open");
				
				
				
				
			} // if visible
			
		} else if(childList.is('ul.level-3')) {
			if(childList.is(':visible')) { // collapse menu				
				// The list is OPEN
				
				childList.slideUp(menuSlideSpeed);
				$(this).removeClass("open");			
				$(this).addClass("closed");
			
			} else if(!childList.is(':visible')) { // expand menu
				// The list is CLOSED
				
				//$("ul.level-2").slideUp();
				$("a.level-2").removeClass("open");			
				$("a.level-2").addClass("closed");
				$("ul.level-3").slideUp(menuSlideSpeed);
				
				childList.slideDown(menuSlideSpeed);
				$(this).removeClass("closed");			
				$(this).addClass("open");
				
			} // if visible				
		}
		
		// Sneaky way of keeping the menu open is to roll over another top level
		// link... this prevents that from occurring.
		$('a.level-1').mouseenter(function() {
			close_main_menu();
		});
	
		
	});	
	
	
	// Add events to close the menu so it doesn't stay open
	$('div.main-nav').mouseleave(function() {
		close_main_menu();
	});
	
	$('ul.level-2').mouseleave(function() {
		close_main_menu();
	});
	
	$('ul.level-3').mouseleave(function() {
		close_main_menu();
	});
	
}

function close_main_menu () {

	if($("a.level-2").hasClass("open")) {
		$("a.level-2").removeClass("open");			
		$("a.level-2").addClass("closed");
		$("ul.level-3").slideUp(menuSlideSpeed);
	}
	
	if($("a.level-1").hasClass("open")) {
		$("a.level-1").removeClass("open");			
		$("a.level-1").addClass("closed");
		$("ul.level-2").slideUp(menuSlideSpeed);
	}
	
	$("ul.level-2").mouseout(function() { });
	$("ul.level-3").mouseout(function() { });
}








function init_side_menu_click() {
	
	// Hide the sub levels of menu items that are closed
	// Next should be a <ul> tag
	$('a.side-closed').next().hide();
	
	//alert($('ul.level-2 li:last-child').html());//.addClass("no-bottom-border");
	$('ul.side-level-2 li:last-child').addClass("no-bottom-border");
	//$("li:last").css({backgroundColor: 'yellow', fontWeight: 'bolder'});

	$('ul.side-level-1 li:first-child').addClass("dark-border-top");
	//$('ul.side-level-1 li:last-child').addClass("dark-border-bottom");


		
	// Only apply an on click event to the anchor with more class
	$('a.side-level-1,a.side-level-2').click(function() {
		close_main_menu();
		// Get the next un-ordered list (we'll check for this next)
		var childList = $(this).next();	

		// Determine if the list is open or not
		if(childList.is('ul.side-level-2')) {
			if(childList.is(':visible')) { // collapse menu				
				// The list is OPEN
				
				childList.slideUp(menuSlideSpeed);
				$(this).removeClass("side-open");			
				$(this).addClass("side-closed");

			} else if(!childList.is(':visible')) { // expand menu
				// The list is CLOSED
				
				// Close any open lists
				// Switch open to close
				$("a.side-level-1").removeClass("side-open");			
				$("a.side-level-1").addClass("side-closed");
				// Slide up any child ul's
				$("ul.side-level-2").slideUp(menuSlideSpeed);				
				
				$("a.side-level-2").removeClass("side-open");			
				$("a.side-level-2").addClass("side-closed");
				$("ul.side-level-3").slideUp(menuSlideSpeed);
								
				childList.slideDown(menuSlideSpeed);				
				$(this).removeClass("side-closed");			
				$(this).addClass("side-open");
			} // if visible
			
		} else if(childList.is('ul.side-level-3')) {
			if(childList.is(':visible')) { // collapse menu				
				// The list is OPEN
				
				childList.slideUp(menuSlideSpeed);
				$(this).removeClass("side-open");			
				$(this).addClass("side-closed");
			
			} else if(!childList.is(':visible')) { // expand menu
				// The list is CLOSED
				
				//$("ul.level-2").slideUp();
				$("a.side-level-2").removeClass("side-open");			
				$("a.side-level-2").addClass("side-closed");
				$("ul.side-level-3").slideUp(menuSlideSpeed);
				
				childList.slideDown(menuSlideSpeed);
				$(this).removeClass("side-closed");			
				$(this).addClass("side-open");
			
			} // if visible				
		}		
	});	
}









