//setup timed functions
var total = count_thumbs();
var rotate = true;

var thumb_x=80;
var thumb_y=46;
var x=40;
var y=23;

$(document).ready(function(){
	
	
	//add listeners using LIVE so that dynamically added objects persist the actions
	//ACTION definitions:
	
	//sets current thumbnail to "active"
	$('.slide_list > a').live('click',function(){
		select_slide($(this));	 
		set_paused();
	});
	
	//sets play/pause actions for play button
	
	$('.nav-right > a.slideshow_pause').live('click', function(){
		set_paused();
	});
	$('.nav-right > a.slideshow_play').live('click', function(){
		set_play();
	});
	
	
	//page load actions:
	load_slide_show();

});

function select_slide(obj)
{
	//shrink_thumb('.active_slide img');
	clear_active();
	$(obj).addClass('active_slide');
	show_slide($(obj).attr("id"));
	//enlarge_thumb('.active_slide img');
}
function enlarge_thumb(obj){
		$(obj).animate({height: thumb_y, width: thumb_x}, 100);
}
function shrink_thumb(obj){
	$(obj).animate({height: y, width: x}, 100, function(){$(this).removeAttr("style");});
}
	
function autoselect_next_slide() 
{	
	if (rotate) {
		select_next_slide();
	}
}
function select_next_slide()
{
	if($('a.active_slide').hasClass("last"))
	{
		select_slide($('.slide_list > a.first'));
	}
	else
	{
		select_slide($('.slide_list > a.active_slide').next('.slide_list > a'));
	}
}
function select_prev_slide()
{
	if($('a.active_slide').hasClass("first"))
	{
		select_slide($('.slide_list > a.last'));
	}
	else
	{
		select_slide($('.slide_list > a.active_slide').prev('.slide_list > a'));
	}
}

function clear_active()
{
	$('.slide_list > a.active_slide').each(function(){
		$(this).removeClass('active_slide');
	});
}

function set_paused()
{
	rotate=false;
	$('.nav-right > a').removeClass('slideshow_pause');
	$('.nav-right > a').addClass('slideshow_play');
	$('.nav-right > a').html('Play');
	
}
function set_play()
{
	rotate=true;
	$('.nav-right > a').removeClass('slideshow_play');
	$('.nav-right > a').addClass('slideshow_pause');
	$('.nav-right > a').html('Pause');
}

function count_thumbs()
{
	var x = 0;
	$('.slide_list > a').each(function(){x++;});
	debug("x",x);
	return x;
}

//main init function to load the slide show and its actions.  only call once on
//document.ready
function load_slide_show()
{
	/*load_slide_list(".slide_list");
	load_slides("#slideshow_viewport");*/
	
	show_slide($('.slide_list a:first-child').attr("id"));
	$('.slide_list a:first-child').addClass("active_slide");
	$('.slide_list a:first-child').addClass("first");
	$('.slide_list a:last-child').addClass("last");
	$('#slideshow-loading').remove();
	setInterval('autoselect_next_slide()', 5000);
	set_play();
	
}

//function to select which slide should have visibility.
function show_slide(id, target)
{
	$(".activeSlide").fadeOut("fast", function(){
		$(".activeSlide").removeClass("activeSlide").removeAttr("style");
		//$("#post-" + id).removeClass("slide_off");
		$("#post-" + id).addClass("activeSlide");
		
		var slider_height = $(".activeSlide > .slideshow_overlay").css("height");
		$(".activeSlide > .slideshow_overlay").css("height","0px");
		$(".activeSlide > .slideshow_overlay").animate(
			{height: slider_height}, 1000
		);
		$(".activeSlide").fadeIn("fast");
		
	});
	
}

function debug(var1, var2)
{
	var html = $('.debug').html();
	html += "<br><strong>" + var1 + ": </strong>" + var2;
	$('.debug').html(html);
}
