var TICKER_TIMER = 8000;
var tickerMoving, tickerWidth, curTicker, totalTickers, playTicker;

$(document).ready(function(){
	tickerMoving = false;
	tickerWidth = 144;
	curTicker = 0;
	totalTickers = $("#downloadsSlider li").length;	
	
	startAnimation();
	
	$("#downloadsSlider li").each(function(i) {
		$(this).css({ 
			left: (tickerWidth * i) + "px",
			display: "block"
		});
	});
	$("#downloadsSlider").css('visibility', 'visible');
});

function startAnimation() {
	tickerMoving = false;
	clearTimeout(playTicker);
	playTicker = setTimeout(nextTicker, TICKER_TIMER);
	
}

function stopAnimation() {
	clearTimeout(playTicker);
}

function nextTicker() {
	if (!tickerMoving) {
		tickerMoving = true;
		
		$("#downloadsSlider li").each(function(i) {
			if (i == totalTickers - 1) {
				var callback = function() {
					startAnimation();
					
					var firstElement = $("#downloadsSlider li:first");
					var lastElement = $("#downloadsSlider li:last");
					
					lastElement.after(firstElement);
					firstElement.css("left", (totalTickers - 1) * tickerWidth + "px");
				}
			} else {
				var callback = function() {};
			}
			
			$(this).animate({ 
				left: (parseInt($(this).css("left")) - tickerWidth) + "px"
			}, 1000, callback);
		});
	}
	
	clearTimeout(playTicker);
}

function previousTicker() {
	if (!tickerMoving) {
		tickerMoving = true;

		var firstElement = $("#downloadsSlider li:first");
		var lastElement = $("#downloadsSlider li:last");
		
		firstElement.before(lastElement);
		lastElement.css("left", tickerWidth * -1 + "px");
		
		$("#downloadsSlider li").each(function(i) {
			if (i == totalTickers - 1) {
				var callback = function() {
					startAnimation();
				}
			} else {
				var callback = function() {};
			}
			
			$(this).animate({ 
				left: (parseInt($(this).css("left")) + tickerWidth) + "px"
			}, 1000, callback);
		});
	}
	
	clearTimeout(playTicker);
}
