jQuery(document).ready(function() {
    
    
	    $(function() {
			var zIndexNumber = 1000;
			$('div').each(function() {
				$(this).css('zIndex', zIndexNumber);
				zIndexNumber -= 10;
			});
		});
    
   			
		//On Hover Over
		function megaHoverOver(){
		    $(this).find(".sub").stop().fadeTo('100', 1).show(); //Find sub and fade it in
		    (function($) {
		        //Function to calculate total width of all ul's
		        jQuery.fn.calcSubWidth = function() {
		            rowWidth = 0;
		            //Calculate row
		            $(this).find("ul").each(function() { //for each ul...
		                rowWidth  = $(this).width(); //Add each ul's width together
		            });
		        };
		    })(jQuery); 

		    if ( $(this).find(".row").length > 0 ) { //If row exists...

		        var biggestRow = 0;	

		        $(this).find(".row").each(function() {	//for each row...
		            $(this).calcSubWidth(); //Call function to calculate width of all ul's
		            //Find biggest row
		            if(rowWidth > biggestRow) {
		                biggestRow = rowWidth;
		            }
		        });

		        $(this).find(".sub").css({'width' :biggestRow}); //Set width
		        $(this).find(".row:last").css({'margin':'0'});  //Kill last row's margin

		    } else { //If row does not exist...

		        $(this).calcSubWidth();  //Call function to calculate width of all ul's
		        $(this).find(".sub").css({'width' : rowWidth}); //Set Width

		    }
		}
		//On Hover Out
		function megaHoverOut(){
		  $(this).find(".sub").stop().fadeTo('100', 0, function() { //Fade to 0 opactiy
		      $(this).hide();  //after fading, hide it
		  });
		}
		
		//Set custom configurations
		var config = {
		     sensitivity: 1, // number = sensitivity threshold (must be 1 or higher)
		     interval: 100, // number = milliseconds for onMouseOver polling interval
		     over: megaHoverOver, // function = onMouseOver callback (REQUIRED)
		     timeout: 100, // number = milliseconds delay before onMouseOut
		     out: megaHoverOut // function = onMouseOut callback (REQUIRED)
		};

		$("ul#topnav li .sub").css({'opacity':'0'}); //Fade sub nav to 0 opacity on default
		$("ul#topnav li").hoverIntent(config); //Trigger Hover intent with custom configurations
	
	
	
		//Tertiary nav
		//slides the element with class "menu_body" when paragraph with class "menu_head" is clicked 
  	$("#firstpane p.menu_head").click(function()
      {
  		$(this).css({backgroundImage:"url(images/down.png)"}).next("div.menu_body").slideToggle(300).siblings("div.menu_body").slideUp("slow");
         	$(this).siblings().css({backgroundImage:"url(left.png)"});
  	});
  	//slides the element with class "menu_body" when mouse is over the paragraph
  	$("#secondpane p.menu_head").mouseover(function()
      {
  	     $(this).css({backgroundImage:"url(images/down.png)"}).next("div.menu_body").slideDown(500).siblings("div.menu_body").slideUp("slow");
           $(this).siblings().css({backgroundImage:"url(left.png)"});
  	});
  	 	
  	
});

function zIndexWorkaround()
{
    // If the browser is IE,
    if(isIE())
    {
        /*
        ** For each div with class menu (i.e.,
        ** the thing we want to be on top),
        */
        $("div.sub").parents().each(function() {
            var p = $(this);
            var pos = p.css("position");
 
            // If it's positioned,
            if(pos == "relative" ||
               pos == "absolute" ||
               pos == "fixed")
            {
                /*
                ** Add the "on-top" class name when the
                ** mouse is hovering over it, and remove
                ** it when the mouse leaves.
                */
                p.hover(function() {
                        $(this).addClass("on-top");
                    },
                    function() {
                        $(this).removeClass("on-top");
                    });
            }
        });
    }
}



function isIE()
{
    if(navigator.userAgent.match(/MSIE \d\.\d+/))
        return true;
    return false;
}