//=============================================================================
var TBanners		= {};

//=============================================================================
TBanners.Data		= {};
TBanners.Pos		= -1;

TBanners.Running	= true;
TBanners.TimerHandle = null;

TBanners.Locked		= false;

//=============================================================================
TBanners.Start = function() {
	TBanners.Running = true;

	TBanners.LoadImage(TBanners.Pos + 1);
}

//-----------------------------------------------------------------------------
TBanners.LoadImage = function(Pos) {
	if(TBanners.Locked) return;

	TBanners.Pos = Pos;

	if(TBanners.Pos >= TBanners.Data.length) {
		TBanners.Pos = 0;
	}else
	if(TBanners.Pos < 0) {
		TBanners.Pos = TBanners.Data.length - 1;
	}

	TBanners.Locked = true;

	var Picture = new Image();

	Picture.onload = function() {
		$("#BannersImage2").css("background-image", "url('" + TBanners.Data[TBanners.Pos]["Filename"] + "')");

		TBanners.FadeIn();
	};

	Picture.src = TBanners.Data[TBanners.Pos]["Filename"];
}

//-----------------------------------------------------------------------------
TBanners.FadeIn = function() {
	for(var i = 0;i < TBanners.Data.length;i++) {
		$("#BannersNumber" + i).removeClass("BannersNumberActive");
	}

	var Num = TBanners.Pos;

	$("#BannersNumber" + Num).addClass("BannersNumberActive");

	$("#BannersCaption").animate({"opacity" : 0}, function() {
		$("#BannersCaption").css("display", "block");
	});	

	$("#BannersImage2").animate({
		"opacity" : 1
	}, 500, "swing", function() {
		$("#BannersCaption").html(TBanners.Data[TBanners.Pos]["Caption"]);
		$("#BannersCaption").animate({"opacity" : 0.85});

		$("#BannersImage1").css("background-image", $("#BannersImage2").css("background-image"));
		$("#BannersImage2").css("opacity", 0);
		
		$("#BannersImage2").click(function(){
			CURL.Redirect(TBanners.Data[TBanners.Pos]["URL"]);
		});

		var Dur = TBanners.Data[TBanners.Pos]["Duration"];

		TBanners.Locked = false;

		if(TBanners.Running) {
			TBanners.TimerHandle = setTimeout(TBanners.Start, Dur);
		}else{
			TBanners.TimerHandle = setTimeout(TBanners.Start, 30000);
		}		
	});	
}

//-----------------------------------------------------------------------------
TBanners.Load = function(Pos) {
	TBanners.Pos = Pos;

	clearTimeout(TBanners.TimerHandle);

	TBanners.Running = false;

	TBanners.LoadImage(TBanners.Pos);
}

//-----------------------------------------------------------------------------
TBanners.Next = function() {
	clearTimeout(TBanners.TimerHandle);

	TBanners.Running = false;

	TBanners.LoadImage(TBanners.Pos + 1);
}

//-----------------------------------------------------------------------------
TBanners.Previous = function() {
	clearTimeout(TBanners.TimerHandle);

	TBanners.Running = false;

	TBanners.LoadImage(TBanners.Pos - 1);
}

//-----------------------------------------------------------------------------
TBanners.OnInit = function(StoresID) {
	CAJAX.Add("MyMovers", "Template", "GetBanners", {'StoresID' : StoresID}, function(Code, Content) {
		if(Code == 1) {
			TBanners.Data = JSON.parse(Content);

			$("#BannersNumbers").html("");
			
			var MarginLeft = (30 * TBanners.Data.length) / 2;
			$('#BannersNumbers').css("margin-left", "-" + MarginLeft + "px");

			for(var i = 0; i < TBanners.Data.length; i++) {
				//if(i > 6) break;

				$("#BannersNumbers").append("<div class='BannersNumber' id='BannersNumber" + i + "'></div>");

				$("#BannersNumber" + i).data("Pos", i).bind("click", function() {
					TBanners.Load($(this).data("Pos"));
				});
			}

			if(count(TBanners.Data) > 1) {
				TBanners.Start();
			}
		}else{
			//Some error, try again
			TBanners.OnInit(StoresID);
		}
	});
}

//=============================================================================

