// JavaScript Document

$(document).ready(function(){
	// Generate Navigation links
	$('.home_marquee_panels .home_marquee_panel').each(function(index){
		$('.home_marquee_nav').append('<a class="home_marquee_nav_item" ></a>');
	});
	
	// Generate Photo Lineup
	$('img.home_marquee_panel_photo').each(function(index){
		var photoWidth = $('.home_marquee_container').width();
		var photoPosition = index * photoWidth;
		$('.home_marquee_photos').append('<img class="home_marquee_photo" style="left: '+photoPosition+'" src="'+$(this).attr('src')+'" alt="'+$(this).attr('alt')+'" width="860" height="414" />');
		$('.home_marquee_photos').css('width', photoPosition+photoWidth);
	});
	
	// Set up Navigation Links
	$('.home_marquee_nav a.home_marquee_nav_item').click(function(){
		
		// Set the navigation state
		$('.home_marquee_nav a.home_marquee_nav_item').removeClass('selected');
		$(this).addClass('selected');
		
		var navClicked = $(this).index();
		var marqueeWidth = $('.home_marquee_container').width();
		var distanceToMove = marqueeWidth*(-1);
		var newPhotoPosition = navClicked*distanceToMove + 'px';
		var newCaption = $('.home_marquee_panel_caption').get(navClicked);
		
		// Animate the photos and caption
		$('.home_marquee_photos').animate({left: newPhotoPosition}, 1000);
		$('.home_marquee_caption').animate({top: '340px'}, 500, function(){
			var newHTML = $(newCaption).html();
			$('.home_marquee_caption_content').html(newHTML);
			setCaption();
		});
	});
	
	// Preload all images, then initialize marquee
	$('.home_marquee_panels img').imgpreload(function(){
		initializeMarquee();
	});
});


function initializeMarquee(){
	$('.home_marquee_caption_content').html(
		$('.home_marquee_panels .home_marquee_panel:first .home_marquee_panel_caption').html()
	);
	$('.home_marquee_nav a.home_marquee_nav_item:first').addClass('selected');
	$('.home_marquee_photos').fadeIn(1500);
	setCaption();
}

function setCaption(){
	var captionHeight = $('.home_marquee_caption').height();
	var marqueeHeight = $('.home_marquee_container').height();
	var newCaptionTop = marqueeHeight - captionHeight - 15;
	$('.home_marquee_caption').delay(100).animate({top: newCaptionTop}, 500);
}
