//--------------------------------
//settings
//--------------------------------
var intvID;
var slideNum=0;//default slide number(0-n)
var intvTIME=4000;//slide interval time
var flg_motion=false;//run=true,stop=false
var flg_reserved="";//flag for "stop reserved" 
var debug = false;//★debug(timer check) true or false

$(window).ready(function() {
	//Navi Type(3slides or 4slides)
	var maxSlide=$("#BoxItem div").length;//スライド枚数
	if(maxSlide==3){
		$("#BoxSlide").addClass("twins");
	}

	//Navi create
	$("#BoxItem").before("<ul id=\"ItemNavi\"></ul>");
 	$(".Item").each(function(){
		str=$(this).children("a").eq(0).text();
		$("#ItemNavi").append("<li title=\""+str+"\"><span id=\"btn-"+$(this).attr("id")+"\">"+str+"</span></li>");
	});

	//NaviPosition Set
	var paramsNavi=new Array();
	if(maxSlide!=3){
		//case regular
		paramsNavi[0]={"position":"absolute","left":"0px","top":"0px","z-index":10,"width":"128px","height":"42px"};//fa
		paramsNavi[1]={"position":"absolute","left":"131px","top":"0px","z-index":1,"width":"128px","height":"42px"};//pa1
		paramsNavi[2]={"position":"absolute","left":"197px","top":"26px","z-index":10,"width":"57px","height":"11px"};//pa2
		paramsNavi[3]={"position":"absolute","left":"262px","top":"0px","z-index":10,"width":"128px","height":"42px"};//foreignBond
	}else{
		//case twins		
		paramsNavi[0]={"position":"absolute","left":"0px","top":"0px","z-index":10,"width":"193px","height":"42px"};//fa
		paramsNavi[1]={"position":"absolute","left":"197px","top":"0px","z-index":1,"width":"193px","height":"42px"};//pa1
		paramsNavi[2]={"position":"absolute","left":"295px","top":"26px","z-index":10,"width":"57px","height":"11px"};//pa2
	}
	for(i=0;i<=maxSlide-1;i++){
		$("#ItemNavi li").eq(i).css(paramsNavi[i]);
	}

	//slide
	$(".Item").css({"display":"none","z-index":1,"opacity":0});
	$(".Item:eq("+slideNum+")").css({"display":"block","z-index":10,"opacity":1});//.show();
	$("#ItemNavi>li:eq("+slideNum+")").addClass("on");
	
	//debug--output
	if(debug){$("#BoxSlide").after("<div id=\"debug\"></div>")};//★debug
	
	//##################################
	//
	//手動更新（クリック処理）
	//
	//##################################
	$("#ItemNavi").each(function(){
		$("li",this).each(function(index){
			var $this=$(this);
			
			$this.click(function(){
				if(!$this.is(".on")) {//表示中、クリック処理無効
					if(flg_motion==false){//スライド実行中、処理無効
						//slide control
						slideFunc(index);
						slideNum=index;
					}
				}//if END
			});
		});
	});
	//##################################
	
	//timer start
	timerFunc();
});


//##################################
//
//timer control ___ .Item mouseover
//
//##################################
$(function(){
	if(flg_motion==false){//スライド実行中、処理無効
		
		$(".Item").hover(
			function(){//mouseover--timer clear
				clearInterval(intvID);
				if(debug){debugFunc("off","タイマーを停止しました（マウスオーバー中）")};//★debug
				intvID='';
				flg_reserved="stop";//停止予約をセット
			},
			function(){//mouseout--timer restart
				flg_reserved="";//停止予約を解除
				timerFunc();
			}
		);
	}//if END
});


//##################################
//
//自動更新（タイマー処理）
//
//##################################
var timerFunc=function(){
	
	if(intvID){
		//timer stop
		clearInterval(intvID);
		if(debug){debugFunc("off","次のスライドに切り替えました。（自動スライド中）")};//★debug
		intvID='';
	}

	intvID=setInterval(
		function(){
			//slide control
			slideNum++;
			if(slideNum>$(".Item").size()-1){
				slideNum=0;//reset
			}
			slideFunc(slideNum);
		},intvTIME);
		if(debug){debugFunc("on")};//★debug
}
//##################################

//--------------------------------
//デバッグ処理★debug
//--------------------------------
var debugFunc=function(way,memo){
	if(way=="on"){
		$("#debug").append("【timer#"+intvID+"start&nbsp;");
	}else if(way=="off"){
		$("#debug").append("→<s>#"+intvID+"</s>stop】："+memo+"<br>");
	}else{
		alert("error");	
	}
}

//--------------------------------
//スライド処理
//--------------------------------
var slideFunc=function(showNum){
	flg_motion=true;//アニメーション処理 start

	//slide control
	$(".Item:visible").addClass("ghost");
	$(".Item:eq("+showNum+")").css({"z-index":100}).animate(
		{opacity:1},
		{
			duration:220,
			complete:function(){
				$(".ghost").css({"z-index":1}).removeClass("ghost").animate(
					{opacity:0},
					{duration:0}
				).hide();
				$(".Item:visible").css({"z-index":10});
				flg_motion=false;//アニメーション処理 end
				
				//タイムー再開（ただし、スライド（.Item）にマウスオーバー中は、再開しない）
				if(flg_reserved!="stop"){
					timerFunc();//timer restart
				}
			}
		}
	).show();

	//navi control
	$("#ItemNavi>li.on").removeClass("on");
	$("#ItemNavi>li:eq("+showNum+")").addClass("on");
	
	//navi-pa on/off切替
	if(showNum==1||showNum==2){
		$("#ItemNavi").css({"background-position":"0px -84px"});
	}else{
		$("#ItemNavi").css({"background-position":"left top"});		
	}

};



