var PromoEffectTime = 800;

var Promobox = 
{
	init: function()
	{
		// SHOW CONTROLS
		$("#promobox .button-left").css("display","block");
		$("#promobox .button-right").css("display","block");
		
		// SELECT FIRST
		$("#promobox .item").removeClass("first");
		$("#promobox .item").hide();
		$("#promobox .item:first").addClass("active");
		
		// REFRESH ARROWS
		Promobox.checkArrows();
		
		Promobox.registerEvents();

	},
	
	checkArrows: function()
	{
		if( $("#promobox .item.active").prev('.item').length == 1 )
		{
			$("#promobox .button-left").addClass("active");
			$("#promobox .button-left").attr("src", "animations/images/promobox-button-left-active.png");
		}
		else
		{
			$("#promobox .button-left").removeClass("active");
			$("#promobox .button-left").attr("src", "animations/images/promobox-button-left.png");
		}
		
		if( $("#promobox .item.active").next('.item').length == 1 )
		{
			$("#promobox .button-right").addClass("active");
			$("#promobox .button-right").attr("src", "animations/images/promobox-button-right-active.png");
		}
		else
		{
			$("#promobox .button-right").removeClass("active");
			$("#promobox .button-right").attr("src", "animations/images/promobox-button-right.png");
		}
	},
	
	right: function()
	{
		Promobox.unregisterEvents();
		
		var tmpEl = $("#promobox .item.active");
		var nxtEl = $("#promobox .item.active").next();
		
		tmpEl.animate({left: "-500px"}, PromoEffectTime, "swing", function() {
			tmpEl.removeClass("active");
		});
        
		nxtEl.addClass("active");
		nxtEl.css("left", "703px");
		nxtEl.animate({left: "0px"}, PromoEffectTime, "swing", function() {
			Promobox.checkArrows();
			Promobox.registerEvents();
		});
	},
	
	left: function()
	{
		Promobox.unregisterEvents();
		
		var tmpEl = $("#promobox .item.active");
		var prvEl = $("#promobox .item.active").prev();
		
		tmpEl.animate({left: "703px"}, PromoEffectTime, "swing", function() {
			tmpEl.removeClass("active");
		});

		
		prvEl.addClass("active");
		prvEl.css("left", "-500px");
		prvEl.animate({left: "0px"}, PromoEffectTime, "swing", function() {
			Promobox.checkArrows();
			Promobox.registerEvents();
		});
		
	},
	
	registerEvents: function()
	{
		// REGISTER EVENTS
		$("#promobox .button-left").click(function()
		{
			if( $(this).hasClass("active") )
			{
				Promobox.left();
			}
		})
		
		$("#promobox .button-right").click(function()
		{
			if( $(this).hasClass("active") )
			{
				Promobox.right();
			}
		})
	},
	
	unregisterEvents: function()
	{
		$("#promobox .button-left").unbind('click');
		$("#promobox .button-right").unbind('click');
	}
};
