(function($) {
  var cache = [];
  // Arguments are image paths relative to the current page.
  $.preLoadImages = function() {
    var args_len = arguments.length;
    for (var i = args_len; i--;) {
      var cacheImage = document.createElement('img');
      //alert("loading images from " + arguments[i]);
      cacheImage.src = arguments[i];
      cache.push(cacheImage);
    }
  }
})(jQuery)


function loadImages (siteRoot) {
	jQuery.preLoadImages(
			siteRoot + "images/navMenu/audio_on.png", 
			siteRoot + "images/navMenu/biography_on.png", 
			siteRoot + "images/navMenu/bullet_on.png", 
			siteRoot + "images/navMenu/contact_on.png", 
			siteRoot + "images/navMenu/dgroove_on.png", 
			siteRoot + "images/navMenu/dj_science_on.png", 
			siteRoot + "images/navMenu/djtaxonomy_on.png", 
			siteRoot + "images/navMenu/downloads_on.png", 
			siteRoot + "images/navMenu/events_on.png",
			siteRoot + "images/navMenu/gallery_on.png", 
			siteRoot + "images/navMenu/history_on.png", 
			siteRoot + "images/navMenu/links_on.png",
			siteRoot + "images/navMenu/media_on.png",
			siteRoot + "images/navMenu/music_on.png",
			siteRoot + "images/navMenu/press_on.png",
			siteRoot + "images/navMenu/software_on.png",
			siteRoot + "images/navMenu/upcoming_on.png",
			siteRoot + "images/navMenu/workshops_on.png"
	);
}





var subObjHide = null;
var parentObjHide = null;
var timeout = 100;

function showSubMenu(menuObj) {
	if ($(menuObj).hasClass('mouseOver') == false) {
		$(menuObj).show('slide', { direction: 'left' }, 100);
	}
}

function hideSubMenu(menuObj) {
	if ($(menuObj).prev().hasClass('mouseOver') == false &&
		$(menuObj).hasClass('mouseOver') == false) {
		$(menuObj).hide('slide', { direction: 'left' }, 100);
	}
}

// Document ready
$(
	function() {
		// set up rollover for nav menu images
		$("a.navLink").hover(
			function() {
				$(this).find('img').each(
					function() {
						$(this).attr("src", $(this).attr("src").replace("_off","_on"));
						$(this).hasClass('mouseOver');
					}
				);
			},
			function() {
				$(this).find('img').each(
					function() {
						$(this).attr("src", $(this).attr("src").replace("_on","_off"));
						$(this).removeClass('mouseOver');
					}
				);
			}
		);
		
		// Set submenu show/hide self on hover
		$(".navSubMenu").hover (
			function() {
				$(this).addClass('mouseOver');
			},
			function() {
				$(this).removeClass('mouseOver');
				subObjHide = $(this);
				window.setTimeout("hideSubMenu(subObjHide)", timeout);
			}
		);

		// Set submenu show/hide on hover over parent		
		$('.parentMenuItem').hover (
			function() { 
				$(this).addClass('mouseOver');
				$(this).css('border-right', '2px solid #4573FA')
				showSubMenu($(this).next());
			},
			function() {
				$(this).removeClass('mouseOver');
				$(this).css('border-right', '2px solid #0040C0')
				parentObjHide = $(this).next();
				window.setTimeout("hideSubMenu(parentObjHide)", timeout);
			}
		);
		
		// Setup extra css - this is not done in the stylesheet so the page looks good for browsers that don't run javascript
		/**
		$('#eventsSubMenu').position({
			my: 'left top',
			at: 'right top',
			of: '#eventsParent',
			collision: "none"
		});
		**/
		
		//$('.navSubMenu').css('position','relative');
		//$('.navSubMenu').css('z-index','1000');
		//$('.navSubMenu').css('display','none');
		
		//$('.navSubMenu').css('position','absolute').css('z-index','100').css('display','none');
		
		//var parentWidth = $('#eventsParent').outerWidth() + 2;
		//var parentHeight = $('#eventsParent').outerHeight() * 2;
		//console.log("width:" + $('#eventsParent').outerWidth());		
		//console.log("height:" + $('#eventsParent').outerHeight());
		//$('#eventsSubMenu').css('left', parentWidth + 'px').css('top', parentHeight + 'px');
		
		$('.navSubMenu').css('position','absolute')
						.css('z-index','1000')
						.css('display','none');

		if (browserType == "MSIE") {
			$('#eventsSubMenu').css('left','114px').css('top','82px');
			$('#djScienceSubMenu').css('left','114px').css('top','126px');
			$('#mediaSubMenu').css('left','114px').css('top','144px');
		} else {
			$('#eventsSubMenu').css('left','114px').css('top','76px');
			$('#djScienceSubMenu').css('left','114px').css('top','114px');
			$('#mediaSubMenu').css('left','114px').css('top','134px');
		}
	}
);

