//ロールオーバースクリプト------------------

function cngimg(n){
	var imgsrc = document.images[n].src;
	if(imgsrc.indexOf("-on") < 0){
		document.images[n].src=imgsrc.substring(0,imgsrc.length-4) +"-on.jpg";
	}
	else{
		document.images[n].src=imgsrc.substring(0,imgsrc.length-7) +".jpg";
	}
}


//トップビジュアルスクリプト------------------

//切り替わり秒数
var c_seconds=5;

//配列設定
//配列の並びは、['出現比率','メインのリンク先']

var menuData     = new Array();
    menuData[1] = [ 10000 , '#' ]; //1番目
    menuData[2] = [ 10000 , '#' ]; //2番目
    menuData[3] = [ 10000 , '#' ]; //3番目
    menuData[4] = [ 50 , '#' ];    //4番目
    menuData[5] = [ 40 , '#' ];    //5番目
    menuData[6] = [ 30 , '#' ];    //6番目
    menuData[7] = [ 20 , '#' ];    //7番目
    menuData[8] = [ 10 , '#' ];    //8番目

var BaseMenuData = new Array();
for(i=1;i<menuData.length;i++){
	var k = i-1;
	BaseMenuData[k]=menuData[i];
}

//配列生成
for(i=0;i<BaseMenuData.length;i++){
	var k=i+1;
	var ki;
	if(i<10 && i > -1){
		ki = "0" + k;
	}
	BaseMenuData[i].push('/images/btn-visual0'+k+'.gif');
	BaseMenuData[i].push('/images/btn-visual0'+k+'-on.gif');
	BaseMenuData[i].push('/images/visual'+ki+'.jpg');
}

//画像プリロード
for(i=0;i<BaseMenuData.length;i++){
	var pimg = "images" + i;
	var pimgon = "images_on" + i;
	var pimgttop = "images_top" + i;
	pimg=new Image();pimg.src=BaseMenuData[i][2];
	pimgon=new Image();pimgon.src=BaseMenuData[i][3];
	pimgttop=new Image();pimgttop.src=BaseMenuData[i][4];
}

//ランダム配列生成
var RmenuData     = new Array();

array_list=0;
do{
	array_max=0;
	for(i=0;i<BaseMenuData.length;i++){
		array_max += BaseMenuData[i][0];
	}

	if(array_max > 0){
		rnd = Math.floor( Math.random() * ( array_max - 1 + 1 ) ) + 1;

		array_result = -1;
		range_begin = 1;
		for( i = 0 ; ( i < BaseMenuData.length ) && ( array_result == -1 ) ; i++ ){
			//各配列から、範囲の終点を決める
			range_end = range_begin + BaseMenuData[i][0];

			//引いた乱数がこの範囲にあれば、該当箇所を確定
			if( rnd >= range_begin && rnd < range_end ){
				//配列の番号を記録
				array_result = i;
				array_index = i;
			}

			//次の範囲の始点を変更
			range_begin = range_end;
		}

		RmenuData[array_list]=BaseMenuData[array_index];
		preData=new Array();
		icount=0;
		for(i=0;i<BaseMenuData.length;i++){
			if(i != array_index){
				preData.push(BaseMenuData[i]);
			}
			icount++;
		}
		BaseMenuData=preData;
		array_list++;
	}
}while(array_list < 8);

//デバッグ
/*
var adata="";
for(i=0;i<RmenuData.length;i++){
	adata+=RmenuData[i]+"\n";
}
alert(adata);
*/

//表示ボタン数
var view_count = 4;

//onの場所
var point = 0;

//初期表示用配列
var writeTags=new Array();

var array = RmenuData;
var ctime = c_seconds * 1000;

function VisualChange(){
	menuChange=setInterval('timeChange()',ctime);
}

//一定間隔変更
function timeChange(){
	var tc;
	var tcv;
	var changemenu;
	tc=onCheck();
	if(tc == 5){
		tcv=4;
		changemenu="up";
	}else if(tc > 0 && tc < RmenuData.length - view_count + 1){
		tcv=tc;
		changemenu="time";
	}else{
		tcv=tc;
		changemenu="out";
	}
	kvChange(tcv,changemenu);
}

//スクロール
function mvChange(val,key){
	var mul    = document.getElementById('topMenu');
	var mli    = mul.getElementsByTagName('li');
	var cimg   = mli[1].firstChild.firstChild.getAttribute('src');

	if(key=="top"){
		ccount=0;
		acount = ccount;
	}else{
		//1番上のメニューは何？
		for( i = 0 ; i < array.length ; i++){
			str = new RegExp(array[i][2],"g");
			str2 = new RegExp(array[i][3],"g");
			if(str.test(cimg)||str2.test(cimg)){
				ccount = i;
			}
		}
		if(val == "up"){
			acount = ccount + 1;
		}else{
			acount = ccount - 1;
		}
	}


	var limit_view = array.length - view_count;
	if(document.getElementById && document.createElement){
		if(((val=="up")&&(ccount < limit_view))||((val=="down")&&(ccount > 0))){
			for( i = 1 ; i < 5 ; i++){
				img = mli[i].firstChild.firstChild;
				if(acount == point){
					img.setAttribute('src',array[acount][3]);
				}else{
					img.setAttribute('src',array[acount][2]);
				}
				acount++;
			}
		}
	}else{
		alert('あなたのブラウザは Level 1 DOM を未サポートです');
	}
}

//画像変更
function kvChange(place,key){
	var mul    = document.getElementById('topMenu');
	var mli    = mul.getElementsByTagName('li');
	var con="";

	//on外し
	for( i = 1; i < 5 ; i++){
		cimg = mli[i].firstChild.firstChild.getAttribute('src');

		str = new RegExp(array[point][3],"g");
		if(str.test(cimg)){
			img = mli[i].firstChild.firstChild;
			img.setAttribute('src',array[point][2]);
			con = "on";
		}
	}

	//タイマー処理
	if(key=="up" && point < array.length-1){
		point++;
		if(con == "on"){
			mvChange('up');
		}
	}else if(key=="up" && point == 7){
		point = 0;
		mvChange('up','top');
		place=1;
	}else if(key=="out" && point == 7){
		point = 0;
		mvChange('up','top');
		place=1;
	}else if(key=="out"){
		point++;
	}

	//on設定
	var mvl = document.getElementById('l_box').getElementsByTagName('a');
	var mvi = document.getElementById('l_box').getElementsByTagName('img');

	for(i=0;i<array.length;i++){
		if(key=="up"){
			str = new RegExp(array[i][3],"g");
		}else{
			str = new RegExp(array[i][2],"g");
		}
		if(key != "out"){
			cimg = mli[place].firstChild.firstChild.getAttribute('src');
			if(str.test(cimg)){
				img = mli[place].firstChild.firstChild;
				img.setAttribute('src',array[i][3]);
				mvl[0].setAttribute('href',array[i][1]);
				mvi[0].setAttribute('src',array[i][4]);
				point = i;
				break;
			}
		}else{
			for( j = 1; j < 5 ; j++){
				cimg = mli[j].firstChild.firstChild.getAttribute('src');
				str = new RegExp(array[point][2],"g");
				if(str.test(cimg)){
					img = mli[j].firstChild.firstChild;
					img.setAttribute('src',array[point][3]);
					break;
				}
			}
			mvl[0].setAttribute('href',array[point][1]);
			mvi[0].setAttribute('src',array[point][4]);
			break;
		}
	}

	if(!key){
		clearInterval(menuChange);
		VisualChange();
		clearTimeout;
	}
}


function onCheck(){
	var mul    = document.getElementById('topMenu');
	var mli    = mul.getElementsByTagName('li');
	var val;
	for( i = 1; i < 5 ; i++){
		cimg = mli[i].firstChild.firstChild.getAttribute('src');
		for(j=0;j<array.length;j++){
			str = new RegExp(array[j][3],"g");
			if(str.test(cimg)){
				val=i+1;
				break;
			}
		}
	}
	if(!val){
		val="";
	}

	return val;
}


