// Fab Slides by Fab Apps  
// Version 0.2, May 2010  
// A simple jQuery slideshow without the feature creep 
// Copyright 2010 Fab Apps 

$(document).ready(function() {
	// Configure 
	var fabslides_startSlide = 1; // start at slide ID 1
	var fabslides_rotateSpeed = 5000; // 5 second intervals
	var fabslides_slideElement = "div.fabslide"; // element to slide, must have postion: absolute 
	// Do not configure
	var fabslides_count = 0; // count number of slides 
	var fabslides_currentSlide = fabslides_startSlide-1; 
	var fabslides_nav_html = '<div id="fabslides_nav">';
	var fabslides_playpause_html = '<div id="fabslides_playpause"><a href="" id="fabslides_pause"><span>Pause</span></a> '+
		'<a href="" id="fabslides_play"><span>Play</span></a></div>';
	var fabslides_nextprev_html = '<div id="fabslides_nextprev"><a href="" id="fabslides_prev"><span>Previous</span></a> '+ 
		'<a href="" id="fabslides_next"><span>Next</span></a></div>';
	var fabslides_timer;
	function fabslides_rotate(nextSlide,animateSpeed) {
		if (!nextSlide) nextSlide = fabslides_currentSlide+1;
		if (!animateSpeed) animateSpeed='slow';
		$('.fabslides_item_'+fabslides_currentSlide).fadeOut(animateSpeed);
		if (nextSlide <= fabslides_count) fabslides_currentSlide = nextSlide;
		else fabslides_currentSlide = 1;
		fabslides_nav_select(fabslides_currentSlide);
		$('.fabslides_item_'+fabslides_currentSlide).fadeIn(animateSpeed);
	}
	function fabslides_start(nextSlide) {
		if (!nextSlide) fabslides_rotate();
		else fabslides_rotate(nextSlide);
		fabslides_timer = setInterval(function(){ fabslides_rotate(); },fabslides_rotateSpeed);	
	}
	function fabslides_stop() {
		clearInterval(fabslides_timer);	
	}
	function fabslides_nav_select(numID) {
		$("#fabslides_nav a").removeClass("fabslides_showing");
		$("#fabslides_nav a#fabslides_nav_item_"+numID).addClass("fabslides_showing");
	}
	function fabslides_pause() {
		fabslides_stop();	
		$("#fabslides_pause").hide();
		$("#fabslides_play").show();	
	}
	function fabslides_play() {
		fabslides_start();
		$("#fabslides_play").hide();
		$("#fabslides_pause").show();
	}
	$("#fabslides "+fabslides_slideElement).each(
		function(intIndex){
			$(this).hide();
			myID=intIndex+1;
			$(this).addClass('fabslides_item_'+myID);
			$(this).addClass('fabslides_item');
			fabslides_count++;
			fabslides_nav_html += '<a href="" rel="'+myID+'" id="fabslides_nav_item_'+myID+'"><span>'+myID+'</span></a> ';
		}
	);
	fabslides_nav_html += '</div>';
	$('#fabslides').prepend(fabslides_nav_html+fabslides_playpause_html+fabslides_nextprev_html);
	fabslides_start();
	$("#fabslides_nav a").bind('click',function(e) {
		fabslides_pause();
		fabslides_rotate(parseInt($(this).attr('rel')));
		e.preventDefault();
	});
	$("#fabslides_play").hide();
	$("#fabslides_pause").bind('click',function(e) {
		fabslides_pause();
		e.preventDefault();
	});
	$("#fabslides_play").bind('click',function(e) {
		fabslides_play();
		e.preventDefault();
	});
	$("#fabslides_prev").bind('click',function(e) {
		fabslides_pause();
		var previousID = fabslides_currentSlide-1;
		if (previousID < 1) previousID = fabslides_count;
		fabslides_rotate(previousID);
		e.preventDefault();
	});
	$("#fabslides_next").bind('click',function(e) {
		fabslides_pause();
		fabslides_rotate();
		e.preventDefault();
	});
});
/* Use for debugging when needed 
function showDebug(html) {
	$("#debugStatus").prepend("<li>"+html+"</li>");
}*/
