jQuery(document).ready(function($) {
	
	$("a.opener").fancybox({ // Apply fancybox modal on click
		'overlayOpacity':0.8,
		'overlayColor':'#5c554e',
		'transitionIn': 'elastic',
		'transitionOut': 'elastic',
		'titleShow': false,
		'autoScale': true
	});
	
	//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: 10, // number = sensitivity threshold (must be 1 or higher)
		interval: 25, // 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)
	};
	
	$("#nav li .sub").css({'opacity':'0'}); //Fade sub nav to 0 opacity on default
	$("#nav li").hoverIntent(config); //Trigger Hover intent with custom configurations
	
	$("#slideshow #slide_holder").cycle({ // Slideshow in header
		fx:     'fade', 
		speed:  '1275', 
		timeout: '5125', 
		next:   '#slide_next', 
		prev:   '#slide_prev' 
	});
	
	$("#footer_meta li:last").css({'margin-right':'0'}); // Last footer item, the form
	$(".ngg-albumoverview ul li:nth-child(4n)").css({'margin-right':'0'}); // Strip margin
	$(".ngg-galleryoverview ul li:nth-child(4n)").css({'margin-right':'0'}); // Strip margin 
	
	$('a[rel|="gallery"]').fancybox({ // Apply fancybox modal on click
		'overlayOpacity':0.8,
		'overlayColor':'#5c554e',
		'transitionIn': 'fade',
		'transitionOut': 'fade',
		'titleShow': false
	});
	
	$("#request_info_success").hide(); // footer request info form success message
	$("#contact_us_success").hide(); // contact us form success message
	
	$(".munger").emailAddressMunging(); // munge email addresses in format: handle [at] email [dot] com
	
	$('a[rel^="external"],a[rel$="external"]').attr({target:"_blank"});
	
});
