/* Author: Brian Earwood */




// global object
var mjhr = (function($){
		
		// Newsletter email form value show and hide on focus
		var form_email = $('#newsletter').find('input[type=text]');
		form_email.focus( function(){
			form_email.attr('value', '');
		}).blur( function(){
			form_email.attr('value', 'Please enter you email address');
		});
		
		
		
		//////////////////////////////////
		//    TEXT RESIZE FUNCTIONS		//
		//////////////////////////////////
		var new_size = 0;
		// put text content in jQuery obj
		var content = $('#content-area > .oi').find('*').not('#text-resize, #plus, #minus, #reset');
		// array for starting font sizes
		var start_sizes = [];
		// put buttons in jQuery obj
		var resize_buttons = {
			plus: $('#plus'),
			minus: $('#minus') 
		};
		
		// grab starting font sizes for all content elements
		content.each(function(){
			var el = $(this);
			start_sizes.push( parseFloat(el.css('font-size')));
			// set font size to previously recoreded size, using the storage multiplier
			el.css('font-size', function(){
				return parseFloat(el.css('font-size')) * parseFloat(localStorage.getItem('multiplier'));
			});			
		});
		
		// reset button for reverting to original size and delete storage
		var reset = $('#reset');
		reset.click(function(event){
			event.preventDefault();
			content.each(function(index){
				var el = $(this);
				// set font size to original size
				el.css('font-size', function(){	return start_sizes[index]; });		
			});
			localStorage.removeItem('multiplier');
		});
		
		// loop over both buttons
		$.each(resize_buttons, function(key, value){
			// listen for clicks
			value.click(function(event){
				event.preventDefault();
				// pull value from button element
				var increment = value.attr('data-increment');

				// loop over text content 
				content.each(function(index){
					var el = $(this);
					// determine new font size, using the button element's data attribute
					var new_size = parseFloat(el.css('font-size')) * parseFloat(increment);
					// determine the current multiplier from the old size to the new
					var multiplier = roundNumber((new_size / start_sizes[index]), 2);
					// prevent text from being resized too small or too big
					if(multiplier <= 0.6 || multiplier >= 3.0) return;
					// set value to storage to be used on page refresh
					localStorage.setItem("multiplier", multiplier);
					// increase size of font
					el.css({'font-size': Math.floor(new_size)});
				});
			});
		});
		
		
		// trigger Google Analytics on the newsletter submission
		$('#ccoptin').submit(function(){
			_gaq.push(['_trackEvent', 'Newsletter', 'Sign-up']);
		});
		
		
		// execute when all files have loaded
		$(window).load(function(){
			// facilities gallery rotator applied to DOM
			$('#gallery').orbit({
				captions: "true", 
				animation: "fade"
			});
		});
		
})(jQuery);























