//var 3.0 date 090703 by fujii

var slideNum=0;
var maxSlideNum=0;
var zindex;
var intervalTimer = 5000;//タイマーを設定可能

var menuVisi = 500;//メニューが現れる速度 デフォルト500
var menuInVisi =300;//メニューが隠れる速度 デフォルト300
var menuVisiLength ='17em';

var menuInVisiLength00 = 13;//横幅の実数値。実装として微妙。
var menuInVisiLength = menuInVisiLength00 + 'px';




$(function(){
	
	$('#mainVisual div#slide img').ready(function(ev) {
		
		//初期設定
		
		//IE6などのボックスモデルバグの補正
		if($.boxModel != 1){ 
			menuInVisiLength00 += 8;
			menuInVisiLength = menuInVisiLength00 + 'px';
		}

		//ループ要素の数を数えて保持
		maxSlideNum = $('#slide div').size();
		//$('#trace span').text(maxSlideNum);
		
		//ボタンを配置するボックスを#slideの直後に生成
		$('#slide').after('<div id="slideMenu"></div>');
		
		
		//idを振る
		$('#slide div').each(function(idx){
			var num = maxSlideNum - idx - 1;
			$(this).attr('id','slide' + num);
		});
		
		
		//ボタン生成
		$('#slide div').each(function(idx){
			$('#slideMenu').append('<div id="slideMenu' + idx + '">' + ++idx + '&nbsp;&nbsp;&nbsp;<span></span></div>');
		});
		
		//画像のalt属性を抽出して、ボタンに代入
		$('#slideMenu span').each(function(idx){
			$(this).text($('#slide div#slide' + idx +' img').attr('alt'));
		});
		
		//初回モーション
		$('#slideMenu div#slideMenu0 span').fadeIn('slow');
		$('#slideMenu div#slideMenu0').addClass('active').animate({width:menuVisiLength},menuVisi);
		
		//タイマーセット
		it = setInterval(function(){
			
			//最初に消しておいた2枚目以降のスライドを表示
			$('#slide div').css('display','block');
			
			//前回のループでoutしたスライドを最背面に配置して表示。outを削除。
			$('#mainVisual div#slide div.out').css('zIndex','100').fadeIn('fast').removeClass('out');
			
			//Z-indexのリセット。0番スライドが始まる直前。
			//z-index:105がビジブル。100が後ろに回った状態。
			if(slideNum == 0){
				$('#mainVisual div#slide div').css('zIndex','105');
			}
			
			//フェードアウト アウトしたスライドにはclass="out"を追加
			$('#mainVisual div#slide div#slide' + slideNum ).fadeOut('slow').addClass('out');
			
			
			//メニューの書き換え 格納時はspan要素内を消しておく
			/*全部元に戻す*/
			$('#slideMenu div span').fadeOut('fast');
			$('#slideMenu div#slideMenu' + slideNum ).animate({width:menuInVisiLength},menuInVisi, function () {
				
				//カウンタインクリメントとリセット
				slideNum++;
				if(slideNum == maxSlideNum){
					slideNum = 0;
				}
				/*アクティブになるメニューにテキストを入れる*/
				$('#slideMenu div#slideMenu' + slideNum + ' span' ).fadeIn('slow');
				$('#slideMenu div#slideMenu' + slideNum ).addClass('active').animate({width:menuVisiLength},menuVisi);
			}).removeClass('active');
			
			
		}, intervalTimer);
	});
	
	
	
	//スライドボタン
	//
	$('#slideMenu div').click(function(ev) {
		clearTimeout(it);
		$('#slideMenu div.active span').fadeOut('fast');
		$('#slideMenu div.active').animate({width:menuInVisiLength},menuInVisi).removeClass('active');

		$(this).addClass('active').animate({width:menuVisiLength},menuVisi);
		$('#slideMenu div.active span').fadeIn('slow');
	});
	
	
	//スライドボタンを押したら、メインビジュアルを切り替える
	$('#slideMenu div').click(function(ev) {
		var index = $('#slideMenu div').index(this);
		$('#mainVisual div#slide div').fadeOut('slow').addClass('out');
		$('#mainVisual div#slide div#slide' + index).fadeIn('slow');
		
		
		//カウンタ停止
		slideNum=0;

	});



});

