// JavaScript Document
jQuery(function(){
	//Banner
	var t1 = null,
		current = 1,
		bannerNum 	= $("#FlashBanner span").length,
		start, end;
	$("#BannerText").html($($("#FlashBanner").find("span")[0]).attr("title"));
	ResetBanner();
	BannerPlay("FlashBanner");
	//Hover
	$("#FlashBanner").hover(function(){  clearInterval(t1);
	},function(){ BannerPlay("FlashBanner");
	});
	//Click
	$("#FlashBanner div span").click(function(){
		var thisNum = GetNum(this) + 1;
		if(current < thisNum){
			//Next
			var num = thisNum - current;
			var step = "-=" + (num * 290);
			$("#FlashBanner").find("li").animate({left:step},200,function(){
				if(parseInt(this.style.left.replace("px","")) < 0){
					this.parentNode.appendChild(this);
					ResetBanner();
				}
			}).end().find("span[class~='current']").removeClass("current");
			$("#BannerText").html($(this).attr("title"));
			$(this).addClass("current");
			current += num;
		}else if(current > thisNum){
			//Previous
			var num = current - thisNum;
			for(var i = 1; i <= num; i++){
				var parent = $("#FlashBanner").find("li").parent()[0];
				var first = $("#FlashBanner").find("li:first")[0];
				var last = $("#FlashBanner").find("li:last")[0];
				parent.insertBefore(last,first);
				last.style.left = (-290 * i) + "px";
			}
			var step = "+=" + (num * 290);
			$("#FlashBanner").find("li").animate({left:step},200).end().find("span[class~='current']").removeClass("current");
			$("#BannerText").html($(this).attr("title"));
			$(this).addClass("current");
			current -= num;
		}
	});
	function Banner(obj,act,type){
		if(!type){
			clearInterval(t1);
			t1 = null;
		}
		if(!$(obj).find("li").is(':animated')){
			if(act){
				//Next
				var step = "-=290";
				$(obj).find("li").animate({left:step},200,function(){
									if(parseInt(this.style.left.replace("px","")) < 0){
										this.parentNode.appendChild(this);
										ResetBanner();
									}
								});
				if(current == bannerNum) current = 0;
				$("#BannerText").html($($(obj).find("span")[current]).attr("title"));
				$($(obj).find("span[class~='current']").removeClass("current").parent().find("span")[current]).addClass("current");
				current++;
			}else{
				//Previous
				var step = "+=290";
				var parent = $(obj).find("li").parent()[0];
				var first = $(obj).find("li:first")[0];
				var last = $(obj).find("li:last")[0];
				parent.insertBefore(last,first);
				last.style.left = "-290px";
				$(obj).find("li").animate({left:step},200);
				if(current == 1) current = bannerNum + 1;
				$("#BannerText").html($($(obj).find("span")[current]).attr("title"));
				$($(obj).find("span[class~='current']").removeClass("current").parent().find("span")[current - 2]).addClass("current");
				current--;
			}
		}
	}
	function BannerPlay(id){
		var obj = document.getElementById(id);
		clearInterval(t1);
		tl = null;
		t1 = setInterval(function(){
			Banner(obj,true,true);
		},4500);
	}
	//Get current obj sequence;
	function GetNum(obj){
		var spans = obj.parentNode.getElementsByTagName("span");
		for(var i = 0; i < spans.length; i++){
			if(spans.item(i) == obj){
				return i;
			}
		}
	}
	//Set banner position
	function ResetBanner(){
		$("#FlashBanner li").css({position:"absolute",left:"0"});
		for(var i = 0; i < bannerNum; i++){ $("#FlashBanner li")[i].style.left = i * 290 + "px"; }
	}
});
