/* 
	Author: Chris Barrow
*/

var w,h;
var speed = 950;
var init = animating = false;
var mode = 'gallery';
var $s,$c,$next,$currentFrame;

$(function()
{
	$s = $('#slideshow');
	$c = $('#container');
	
	$currentFrame = $('.frame').first();
	var frameIndex = 0;
	
	$('.frame').hide();
	$currentFrame.css('left','30px').show();
	
	$(window).resize(function()
	{
		w = $(this).width();
		h = $(this).height();
		var sTop = (h / 2) - (532 / 2);
		
		var newLeft = (w / 2) - ($currentFrame.width() / 2);
		if(!$currentFrame.hasClass('intro')) $currentFrame.css('left',newLeft+'px');
		$c.height(h);
		$s.css('top',sTop+'px');
	});
	
	$(window).trigger('resize');
	$('#slideshow').fadeIn(2000);
	
	$('.thumb .selected').first().fadeIn();
	var selectedThumb = $('.thumb').first();
	
	$('.thumb').click(function()
	{
		if(animating) return false;
		animating = true;
		var index = parseInt($(this).attr('id').replace('thumb-',''));
		var thumb_id = '#'+$currentFrame.attr('id').replace('frame','thumb');
		var frame_id = '#'+$(this).attr('id').replace('thumb','frame');
		$(thumb_id).find('.selected').fadeOut();
		$(this).find('.selected').fadeIn();
		var $nextFrame = $(frame_id);
		var nw = $nextFrame.width();
		var cw = $currentFrame.width();
		var newLeft = (w / 2) - (nw / 2);
		if(index > frameIndex)
		{
			$nextFrame.css('left',w+'px').show();
			var l = $nextFrame.hasClass('intro') ? '30px' : newLeft+'px';
			$nextFrame.animate({'left':l},speed,'easeOutQuint',function()
			{
				$currentFrame.hide();
				$currentFrame = $(this);
				frameIndex = index;
				animating = false;
			});
			$currentFrame.animate({'left':(0 - (cw+300)) + 'px'},speed,'easeOutQuint');
		} else if(index < frameIndex) 
		{
			$nextFrame.css('left',(0 - nw)+'px').show();
			var l = $nextFrame.hasClass('intro') ? '30px' : newLeft+'px';
			$nextFrame.animate({'left':l},speed,'easeOutQuint',function()
			{
				$currentFrame.hide();
				$currentFrame = $(this);
				frameIndex = index;
				animating = false;
				
			});
			$currentFrame.animate({'left':(w) + 'px'},speed,'easeOutQuint');
		}
		selectedThumb = $(this);
	});
	
	$('.frame').click(function(e)
	{
		var $next = selectedThumb.next();
		if(!$next.length) $next = $('.thumb').first();
		$next.click();	
		
	});
		
	$('header,#thumbs').fadeIn(2000);

	
	$('nav a').click(function()
	{
		var $link = $(this);
		if(mode == 'gallery')
		{
			$('#thumbs').fadeOut(speed);
			$s.fadeOut(speed,function()
			{
				$link.html('gallery');
				mode = 'contact';
				$('#contact').fadeIn(speed);
			});
		} else {
			$('#contact').fadeOut(speed,function()
			{
				$link.html('contact');
				mode = 'gallery';
				$s.fadeIn(speed);
				$('#thumbs').fadeIn(speed);
			});
		}
	});
	
	$('h1 a').click(function()
	{
		$('.selected').hide();
		$('.thumb').first().click();
		if(mode != 'gallery')
		{
			$('#contact').fadeOut(speed,function()
			{
				$('nav a').html('contact');
				mode = 'gallery';
				$s.fadeIn(speed);
				$('#thumbs').fadeIn(speed);
			});
		}
	});
});


var goHome = function()
{
	if($currentFrame.hasClass('intro')) return false;
	$s.fadeOut(speed,function()
	{
		$('.frame').hide();
		var $first = $('.frame').first();
		var fw = $first.width();
		$first.show().css('left','30px');
		var $n = $first.next();
		$n.css('left',(w) + 'px').show();
		$s.fadeIn(speed*4,function()
		{
			$n.animate({'left':(w - 30)+'px'},speed,'easeOutQuint');
			$currentFrame = $first;
			$next = $n;
			$next.addClass('active');
		});
	});
}


















