
function swapTestimonial () {
	// Find the active one (display block)
	var visible = $('.testimonialSlide').filter(':visible').first();
	
	$(visible).fadeOut('fast', function(){
			$(this).css({display:'none'});
			var next = visible.next('.testimonialSlide').first();
			if(next.length < 1){
				next = $('.testimonialSlide').first();
			}
			next.fadeIn('fast',function(){
					$(this).css({display:'block'});
			});
	});
}

$(document).ready(function(){
		$("#featured > ul").tabs({fx:{opacity: "toggle"}}).tabs("rotate", 5000, true);
		
		// Set up slide fading thing, inc. pause for mouseenter
		var testiInt = setInterval('swapTestimonial()', 5000);
		$('.featuredTestimonial').mouseenter(function(){
				clearInterval(testiInt);
		}).mouseleave(function(){
			testiInt = setInterval('swapTestimonial()', 5000);
		});
		
		
		function megaHoverOver(){
			// Prevent menu loading behind existing menu -TH20110705
			$('#nav .sub').css({zIndex:99998});
			$(this).find(".sub").css({zIndex:99999}).stop().fadeTo('fast', 1).show();
			
			//Calculate width of all ul's
			(function($) { 
					jQuery.fn.calcSubWidth = function() {
						rowWidth = 0;
						//Calculate row
						$(this).find("ul").each(function() {
								rowWidth += $(this).width();
						});	
					};
			})(jQuery); 
			
			if ( $(this).find(".row").length > 0 ) { //If row exists...
				var biggestRow = 0;	
				//Calculate each row
				$(this).find(".row").each(function() {							   
						$(this).calcSubWidth();
						//Find biggest row
						if(rowWidth > biggestRow) {
							biggestRow = rowWidth;
						}
				});
				//Set width
				$(this).find(".sub").css({'width':biggestRow});
				$(this).find(".row:last").css({'margin':'0'});
				
			} else { //If row does not exist...
				
				$(this).calcSubWidth();
				//Set Width
				$(this).find(".sub").css({'width' : rowWidth});
			}
			
			// Fix 'right' of sub menus
			var navRight = $('#nav').innerWidth() + $('#nav').offset().left;
			el = $(this);
			if(el.find('.sub').length) {
				var elLeft = el.find('.sub').first().offset().left;
				var elRight = elLeft + rowWidth;
				if(elRight > navRight){
					el.find('.sub').css({left:'auto',right:-200});
				}
			}
		}
		
		function megaHoverOut(){ 
			$(this).find(".sub").stop().fadeTo('fast', 0, function() {
					$(this).hide(); 
			});
		}
		
		var config = {
			sensitivity: 2, // number = sensitivity threshold (must be 1 or higher)
			interval: 100, // number = milliseconds for onMouseOver polling interval
			over: megaHoverOver, // function = onMouseOver callback (REQUIRED)
			timeout: 500, // number = milliseconds delay before onMouseOut
			out: megaHoverOut // function = onMouseOut callback (REQUIRED)
		};
		
		$("#nav li .sub").css({'opacity':'0'});
		$("#nav li").hoverIntent(config);
});

