// FSTCMS namespace
var FSTCMS = window.FSTCMS || {};

// Module: FSTCMS.Site
FSTCMS.Site = (function() {
	
	var originalFontSize;
	
	var currentFontSize = function() {
		var currentFontSize = $('html').css('font-size');
		var currentFontSizeNum = parseFloat(currentFontSize, 10);
		return currentFontSizeNum;
	};
	
	// Public
	return {
	
		initFancyBox : function() {
			if (typeof $.fancybox !== 'function') return false;
			$('.fancy').fancybox({
		        'transitionIn'      : 'none',
		        'transitionOut'     : 'none',
		        'titlePosition'     : 'over',
		        'titleFormat'       : function(title, currentArray, currentIndex, currentOpts) {
		            return '<span id="fancybox-title-over">Image ' +  (currentIndex + 1) + ' / ' + currentArray.length + ' ' + title + '</span>';
		        }
		    });
		    $('#video-popup a').fancybox({
		    	'type'				: 'swf',
				'padding'			: 0,
				'autoScale'			: false,
				'transitionIn'		: 'none',
				'transitionOut'		: 'none'
			});
		},
		
		initToggle : function() {
			$('.toggle_container').hide(); 
			$('h2.trigger').click(function(){
				$(this).toggleClass('active').next().slideToggle('slow');
				return false;
			});
		},
		
		initFontResize : function(element) {
			if (element == null) return false;
		 	originalFontSize = $('html').css('font-size');
			function currentfs() {
				var currentFontSize = $('html').css('font-size');
				var currentFontSizeNum = parseFloat(currentFontSize, 10);
				return currentFontSizeNum;
			}
		  	// Increase Font Size
		  	$('.increaseFont').click(function(){
			    currentFontSizeNum = currentfs();
			    var currentFontSizeNum = currentFontSizeNum*1.1;
			    $('html').css('font-size', currentFontSizeNum);
			    return false;
		  	});
		  	// Decrease Font Size
			$('.decreaseFont').click(function(){
			  	currentFontSizeNum = currentfs();
			    var currentFontSizeNum = currentFontSizeNum*0.9;
			    $('html').css('font-size', currentFontSizeNum);
			    return false;
			});
		  	// Reset Font Size
			$('.resetFont').click(function(){
		    	$('html').css('font-size', originalFontSize);
		  	});
		},
		
		initFade : function(element) {
    		$('#page-images').cycle({
				fx: 'fade'
			});
		},
		
		initGalleryOpacity : function() {
    		$(".gallery-img")
			.css("opacity", 0.7)
			.hover(
				function() { $(this).fadeTo("medium", 1.0); }, 
				function() { $(this).fadeTo("medium", 0.7); }
			);
		},
		
		initGalleryInnerPage : function() {
			$("#page-images li")
			.css("opacity", 0.7)
			.hover(
				function() { $(this).fadeTo("medium", 1.0); }, 
				function() { $(this).fadeTo("medium", 0.7); }
			);
			$("a[rel=example_group]").fancybox({
				'transitionIn'		: 'none',
				'transitionOut'		: 'none',
				'titlePosition' 	: 'over',
				'titleFormat'		: function(title, currentArray, currentIndex, currentOpts) {
					return '<span id="fancybox-title-over">Image ' + (currentIndex + 1) + ' / ' + currentArray.length + (title.length ? ' &nbsp; ' + title : '') + '</span>';
				}
			});
		}
		
	};
	
}());

FST.Util.call(/\/showcase\/.+/i, FSTCMS.Site.initGalleryInnerPage, FSTCMS.Site);
FST.Util.call('/showcase', FSTCMS.Site.initGalleryOpacity, FSTCMS.Site);
FST.Util.call('', FSTCMS.Site.initFade, FSTCMS.Site);
FST.Util.call('*', FSTCMS.Site.initFancyBox, FSTCMS.Site);
FST.Util.call('*', FSTCMS.Site.initToggle, FSTCMS.Site);
FST.Util.call('*', FSTCMS.Site.initFontResize, FSTCMS.Site, [document.getElementById('text-size')]);

