/*
	functions.site.js
	JQuery / DOM Interaction Functions
	Creator: Matt Kircher
*/
$(document).ready(function(){
	
	initGallery();
});

/* Function: preloadImages
* Preloads an array of images */
function preloadImages(arrayOfImages){
    $(arrayOfImages).each(function(){
        $('<img/>')[0].src = this;
    });
}

function initGallery(){
	
	if( $('#gallery').length ){
		
		var container = $('#gallery');
		var controls = $('#controls');
		var slides = $('#slides');
		
		controls.find('.next a').click(function(){
			
			slides.find('li:eq(0)').fadeOut(300, function(){
				
				slides.append( $(this) );
				slides.find('li:eq(0)').fadeIn(500, function(){
										   
					var text = $(this).find('img').attr('alt');
					var url = $(this).find('a').attr('href');
					var url_text = $(this).find('a').attr('title');
					showGalleryDescBox(text, url, url_text);
				});				
			});
			return false;
		});
		
		controls.find('.previous a').click(function(){
			
			slides.find('li:eq(0)').fadeOut(300, function(){
				
				slides.prepend( slides.find('li:last-child') );
				slides.find('li:eq(0)').fadeIn(500, function(){
										   
					var text = $(this).find('img').attr('alt');
					var url = $(this).find('a').attr('href');
					var url_text = $(this).find('a').attr('title');
					showGalleryDescBox(text, url, url_text);
				});
			});
			return false;
		});
		
		window.onload = function(){
			
			$('#gallery ul li').each(function(index){
				//get image height
				var img = new Image();
				img.src = $(this).find('img').attr('src');
				var img_h = img.height;
				
				//get container delta
				var li_h = $(this).height(); // should be 500
				var delta = Math.round( (li_h - img_h) / 2 );			
				$(this).css({ marginTop:delta+'px' }); //set
			});
			
			$('#gallery').css({ backgroundImage:'none' });
			
			slides.find('li:eq(0)').fadeIn(500, function(){
											   
				var text = $(this).find('img').attr('alt');
				var url = $(this).find('a').attr('href');
				var url_text = $(this).find('a').attr('title');
				showGalleryDescBox(text, url, url_text);
			});
		}
	}	
}

function showGalleryDescBox( text, url, url_text ){
	
	if( $.trim(url) != '' ){
		url_text = ( $.trim(url) != '' ) ? url_text : 'Click for more&hellip;';
		text += '&nbsp;<a href="'+url+'" target="_blank" title="">['+url_text+']</a>';
	}
	
	$('#desc-box .text').hide().empty().html( text );
	Cufon.replace('#desc-box .text', { fontFamily:'Conduit', hover:true });
	$('#desc-box .text').fadeIn(300);
}
