
function initSlideshow(speed) {
	captionHtml = '<li id="slideshow-caption" class="caption"><div class="slideshow-caption-container"><a href=""><h3></h3></a><p></p></div></li>';
	
	numberSlides();
	
	$('ul.slideshow').append(captionHtml);
	$('ul.slideshow li').css({opacity: 0.0});
	$('ul.slideshow li:first').css({opacity: 1.0});
	
	updateSlideCaptionTo($('ul.slideshow li:first'));
		
	timer = setInterval('slideToNext()',speed);
	
	$('ul.slideshow').hover(
		function () { clearInterval(timer); }, 	
		function () { timer = setInterval('slideToNext()',speed); }
	);
	
	$('ul#slideNav li a').each(function(index) {
		$(this).click(function() {
			jumpToSlide(index+1);
		});
	});
}

function numberSlides() {
	$('ul.slideshow li').each(function(index){
		slideNum = index+1;
		$(this).addClass('slide-'+slideNum);
	});
}

function updateSlideCaptionTo(thisSlide) {
	captionTitle = $(thisSlide).find('a:first img').attr('title');
	captionText = $(thisSlide).find('a:first img').attr('alt');
	captionLink = $(thisSlide).find('a').attr('href');
	$('#slideshow-caption').animate({bottom:-70}, 300, function (){
		$('#slideshow-caption a h3').html(captionTitle);
		$('#slideshow-caption a').attr('href',captionLink);
		$('#slideshow-caption p').html(captionText);
		$('#slideshow-caption').css({opacity: 0.7, bottom:0});
	});
}

function slideToNext() {
	current = getCurrentSlide();
	next = getNextSlide(current);
	slideTo(next);
}

function slideTo(thisSlide) {
	thisSlide.css({opacity: 0.0}).addClass('show').animate({opacity: 1.0}, 1000);
	
	lastSlide = getPrevSlide(thisSlide);
	
	lastSlide.animate({opacity: 0.0}, 1000).removeClass('show');
	updateSlideCaptionTo(thisSlide);
	updateSlideNav();
}

function getCurrentSlide() {
	if($('ul.slideshow li.show').length > 0)
		current = $('ul.slideshow li.show');
	else
		current = $('#ul.slideshow li:first');
	return current;
}

function getNextSlide(current) {
	if(current.next().length>0 && current.next().attr('id') != 'slideshow-caption')
		next = current.next();
	else {
		next = $('ul.slideshow li:first');
	}
	return next;
}

function getPrevSlide(current) {
	if($(current).prev().length>0)
		lastSlide = $(current).prev();
	else
		lastSlide = $('ul.slideshow li:last').prev();
	return lastSlide;
}

function jumpToSlide(num) {
	newSlide = $('ul.slideshow li:nth-child('+num+')');
	$('ul.slideshow li').removeClass('show');
	clearInterval(timer);
	slideTo(newSlide);
}

function updateSlideNav() {

	activeSlide = -1;
	$('ul.slideshow li').each(function(index){
		if($(this).hasClass('show'))
			activeSlide = index+1;
	});
	$('ul#slideNav li').removeClass('on');
	
	if(activeSlide>0) {
		$('ul#slideNav li:nth-child('+activeSlide+')').addClass('on');
	}
	else {
		$('ul#slideNav li:first').addClass('on');
	}
	
}