var slideTimer;
var loopSlides = true;
var pauseBetweenSlides = 100;
var fadeLength = 600;
var slideInterval = 8000;
var showingSlide = false;

function showSlide(slideNum) {
  if (showingSlide) { return; }
	if (slideNum < 1 || slideNum > 6) { return; }
	$(".slide-nav li").removeClass("active");
	$(".slide-nav ul li:nth-child(" + slideNum + ")").addClass("active");
	showingSlide = true;
	$(".slidearea .slide-img:visible").fadeOut(fadeLength).pause(pauseBetweenSlides).queue(function() {
		$("#slide" + slideNum).fadeIn(fadeLength);
		$(this).dequeue();
		showingSlide = false;
	});
}

function currentSlide() {
	return ($(".slidearea .slide-img:visible").attr("id").substring(5,6) * 1);
}

function nextSlide() {
	var slideNum = currentSlide();
	if (slideNum == 6 && loopSlides) {
		showSlide(1);
	} else if (slideNum == 6 && !loopSlides) {
		$(".slide-playpause-control").addClass("play");
		slideTimer.stop();
	} else {
		showSlide(slideNum + 1);
	}
}

function prevSlide() {
	var slideNum = currentSlide();
	if (slideNum == 1) {
		showSlide(6);
	} else {
		showSlide(slideNum - 1);
	}
}

function playShow () {
	$(".slide-playpause-control").removeClass("play");
	slideTimer.reset(slideInterval);
}

function pauseShow() {
	$(".slide-playpause-control").addClass("play");
	slideTimer.stop();
}

function toggleShow() {
	if ($(".slide-playpause-control").hasClass("play")) {
		playShow();
	} else {
		pauseShow();
	}
}

function replayShow() {
	showSlide(1);
	playShow();
}

$(document).ready(function() {
	var totalWidth = 0;
	widthArray = $(".slide-tabs ul li").css({width:"auto"}).each(function(e) {
		totalWidth = totalWidth + $(this).width();
	});
	slideWidth = $(".slide-tabs").width();
	spacing = Math.floor(((slideWidth - totalWidth) - (38 * 2)) / 10) + "px";

	$(".slide-tabs ul li").css({"padding-left": spacing, "padding-right": spacing, "margin-left":0, "margin-right":0});
	$(".slide-tabs ul li:first-child").css({"padding-left": "38px"});
	$(".slide-tabs ul li:last-child").css({"padding-right": "38px"});
});

$(window).load(function() {
	$("#slide1").show();
	$(".slide-nav li").click(function() {
		pauseShow();
		if (!$(this).hasClass("active")) {
			showSlide($(this).prevAll().length + 1);
		}
	});

	$(".slide-back-control").click(function() {
		pauseShow();
		prevSlide();
	});

	$(".slide-forward-control").click(function() {
		pauseShow();
		nextSlide();
	});
	
	$(".slide-playpause-control").click(function() {
		toggleShow();
	});
	
	slideInterval = slideInterval + (fadeLength * 2) + pauseBetweenSlides;
	slideTimer = jQuery.timer(slideInterval, function() {
		nextSlide();
	});
});
