/* ---------------------------------------------------------
	date:2009-03-20 by 猫田にゃあ
	code:UTF-8
	MAC-DOCK風メニューバー
	document.write版  画像拡大方法設定版
	- function Name -
	catchCursor() - 画像の拡大 マウスの座標抽出 
	outCursor()   - 画像の縮小
------------------------------------------------------------ */
/* ----- ユーザー設定 ----- */
/* ----- comment data ----- */
titleSTR = "DEKARON デカロン COPYRIGHT (C) GAME YAROU Inc. ALL RIGHT RESERVED";

var barImage = "http://amaforest.sakura.ne.jp/ogetc/images/dekaron_all.jpg";		//結合画像
var imgList = 10;		//結合した画像数
var barWidth = 550;	//表示するイメージバーの幅
var iWb = 250;			//画像のオリジナルの幅
var iHb = 188;			//画像のオリジナルの高さ

var kdFlag = 0;		//画像の拡大方法 1:オリジナルのサイズで拡大 0:bairiで設定した値での拡大
var bairi = 4;			//拡大表示する辺の拡大率(kdFlagを0にした場合に有効)


/* *********************************************
 *    ここから下はユーザー設定の必要なし
 *********************************************** */

/* -- イメージバーの幅は共通設定ファイルがある場合は共通設定値が有効に -- */
try{
	if( common_ImageBarWight ){ var barWidth = common_ImageBarWight; }
}catch(e){ }

/* ----- IDNameをユニークに設定 ----- */
var IDName = "obj"+(new Date()).getTime();

//var iWs = Math.floor(barWidth / imgList); 	//縮小画像の幅
var iWs = barWidth / imgList; 	//縮小画像の幅
var iHs = iHb / (iWb / iWs);		//縮小画像の高さ

var timeWaitID = null;


document.write('<div style="border:1px solid #faa;width:',barWidth,'px;height:',iHs,'px;"><div style="position:absolute;position:absolute;">');

for(var i=0; i<imgList; i++){
	if(document.all){
		document.write('<div id="',IDName,'a',i,'" style=";position:absolute;top:0px;left:',(i*iWs),'px;width:',iWs,'px;height:',iHs,'px;overflow:hidden;filter:progid:DXImageTransform.Microsoft.Alpha(opacity=100);"><img src="',barImage,'" width="',barWidth,'" height="',iHs,'" id="',IDName,'b',i,'" style="position:absolute;top:0px;left:-',(i*iWs),'px;" /></div>');
	}else{
		document.write('<div id="',IDName,'a',i,'" style=";position:absolute;top:0px;left:',(i*iWs),'px;width:',iWs,'px;height:',iHs,'px;overflow:hidden;"><img src="',barImage,'" width="',barWidth,'" height="',iHs,'" id="',IDName,'b',i,'" style="position:absolute;top:0px;left:-',(i*iWs),'px;" /></div>');
	}
}
if(document.all){
	document.write('<div id="',IDName,'c" style="z-index:',barWidth,';position:absolute;width:',barWidth,'px;height:',iHs,'px;background-color:#f00;Filter:Alpha(Opacity=0);" onMouseMove="catchCursor(\'',IDName,'\',',barWidth,',',bairi,',',iWb,',',iWs,',',iHs,',',i,',',imgList,',',iHb,',',kdFlag,',event)" onMouseOut="outCursor(\'',IDName,'\',',barWidth,',',iWs,',',iHs,',',imgList,',',iWb,',',iHb,')"></div>');
}else{
	document.write('<div id="',IDName,'c" style="z-index:',barWidth,';position:absolute;width:',barWidth,'px;height:',iHs,'px;background-color:#f00;opacity:0;" onMouseMove="catchCursor(\'',IDName,'\',',barWidth,',',bairi,',',iWb,',',iWs,',',iHs,',',i,',',imgList,',',iHb,',',kdFlag,',event)" onMouseOut="outCursor(\'',IDName,'\',',barWidth,',',iWs,',',iHs,',',imgList,',',iWb,',',iHb,')"></div>');
}
document.write('</div></div><div style="padding:2px;font-size:10px;color:#700;">',titleSTR,'</div><div id="',IDName,'xxx" style="display:none;"></div>');



//(IDName,barWidth,bairi,iWb,iWs,iHs,i,imgList,iHb,kdFlag,event)
function catchCursor( id, Aw, b, Bw, Sw, Sh, i, Ary, Bh, f, e ){

	if(document.getElementById(id+"xxx").innerHTML != 0){
		clearInterval(document.getElementById(id+"xxx").innerHTML);
		document.getElementById(id+"xxx").innerHTML = 0;
	}
	if(timeWaitID){ return; }

	if (!e){ e = window.event; }
	var across = (e.layerX || e.offsetX);
	if(!across){ return; }		//マウス座標取得できてない場合離脱
	var activePic = Math.floor(across/Sw);

	var dmyW = [];
	var dmyH = [];
	var allWidth = 0;
	var maxH = 0;
	var zindexFlag = 0;
	for(var i=0; i<Ary; i++){
		//マウス座標と該当画像中心座標との距離
		activeZ = Math.abs(((i*Sw)+(Sw/2))-across);
		//document.getElementById("testviewm"+i).innerHTML = activeZ;

		if(f == 0){ var hani = (Sw*b)*0.6;
		}else{ var hani = Bw*0.6; }

		if(activeZ < hani){
			if(f == 0){ dmyW[i] = Sw + ((hani-activeZ)/hani)*(Sw*b-Sw);
			}else{      dmyW[i] = Sw + ((hani-activeZ)/hani)*(Bw-Sw);   }

			if(f == 0){ dmyH[i] = Sh + ((hani-activeZ)/hani)*(Sh*b-Sh);
			}else{      dmyH[i] = Sh + ((hani-activeZ)/hani)*(Bh-Sh);  }
		}else{
			//hani以上離れたオブジェクトは元のサイズへ
			dmyW[i]  = Sw;
			dmyH[i] = Sh;
		}

		dmyOBJ = document.getElementById(id+"a"+i);
		if(i == activePic){
			zindexFlag = Ary;
			if(document.all){
				dmyOBJ.filters[0].opacity = 100;
			}else{
				dmyOBJ.style.opacity = 100;
			}
			dmyOBJ.style.border = "1px solid #f00"; //border line
		}else{
			if(i < activePic){
				zindexFlag++;
			}else if(i > activePic){
				zindexFlag--;
			}
			if(document.all){
				try{
					dmyOBJ.filters[0].opacity = 70;
				}catch(e){ }
			}else{
				dmyOBJ.style.opacity = 0.7;
			}
			dmyOBJ.style.border = "";
		}
		dmyOBJ.style.zIndex = zindexFlag;
		allWidth += dmyW[i];
		if(maxH < dmyH[i]){ maxH = dmyH[i]; }
	}

	var hRitsu = Aw / allWidth;
	var dmyW2 = 0;
	for(var i=0; i<Ary; i++){

		dmyOBJ = document.getElementById(id+"a"+i);
		dmyOBJ.style.width =  dmyW[i]+"px";
		dmyOBJ.style.height = dmyH[i]+"px";
		dmyOBJ.style.left = dmyW2-((dmyW[i]-dmyW[i]*hRitsu)/2)+"px";
		if(dmyH[i] > Sh){
			dmyOBJ.style.top = -((dmyH[i]-Sh)-((dmyH[i]-Sh)/6))+"px";
		}else{
			dmyOBJ.style.top = -(dmyH[i]-Sh)+"px";
		}
		dmyW2 += dmyW[i]*hRitsu;

		dmyOBJ = document.getElementById(id+"b"+i);
		dmyOBJ.width =  dmyW[i]*Ary;
		dmyOBJ.height = dmyH[i];
		dmyOBJ.style.left = -(i*dmyW[i])+"px";
	}

	dmyOBJ = document.getElementById(id+"c");
	dmyOBJ.style.height = maxH+"px";
	if(maxH > Sh){
		dmyOBJ.style.top = -((maxH-Sh)-((maxH-Sh)/6))+"px";
	}else{
		dmyOBJ.style.top = -(maxH-Sh)+"px";
	}

	//ウエイト
	timeWaitID = setTimeout(
			function(){
				timeWaitID = null;
			}
	, 100);

}

//(IDName,barWidth,iWs,iHs,imgList,iWb,iHb)
function outCursor(id, Aw, Sw, Sh, Ary, Bw, Bh){

	if( document.getElementById(id+"xxx").innerHTML == 0 ){
		document.getElementById(id+"xxx").innerHTML = setInterval(
			function(){
				var allWidth = 0;
				var maxH = Sh;
				var dmyW = [];
				var dmyH = [];
				for(var i=0; i<Ary; i++){
					dmyOBJ = document.getElementById(id+"a"+i);

					dmyW[i] = eval(dmyOBJ.style.width.replace(/px/,""))*0.90;
					if(dmyW[i] < Sw){ dmyW[i] = Sw; }
					allWidth += dmyW[i];

					dmyH[i] = eval(dmyOBJ.style.height.replace(/px/,""))*0.90;
					if(dmyH[i] < Sh){ dmyH[i] = Sh; }

					if(dmyH[i] > maxH){ maxH = dmyH[i]; }
					dmyOBJ.style.zIndex = 0;
					dmyOBJ.style.border = "";
				}

				var hRitsu = Aw / allWidth;
				var dmyW2 = 0;
				for(var i=0; i<Ary; i++){
					dmyOBJ = document.getElementById(id+"a"+i);
					dmyOBJ.style.width =  dmyW[i]+"px";
					dmyOBJ.style.height = dmyH[i]+"px";
					dmyOBJ.style.left = dmyW2-((dmyW[i]-dmyW[i]*hRitsu)/2)+"px";
					if(dmyH[i] > Sh){
						dmyOBJ.style.top = -((dmyH[i]-Sh)-((dmyH[i]-Sh)/6))+"px";
					}else{
						dmyOBJ.style.top = -(dmyH[i]-Sh)+"px";
					}
					if(document.all){
						dmyOBJ.filters[0].opacity = 100;
					}else{
						dmyOBJ.style.opacity = 100;
					}
					dmyW2 += dmyW[i]*hRitsu;

					dmyOBJ = document.getElementById(id+"b"+i);
					dmyOBJ.width =  dmyW[i]*Ary;
					dmyOBJ.height = dmyH[i];
					dmyOBJ.style.left = -(i*dmyW[i])+"px";
				}

				dmyOBJ = document.getElementById(id+"c");
				dmyOBJ.style.height = maxH+"px";
				if(maxH > Sh){ dmyOBJ.style.top = -((maxH-Sh)-((maxH-Sh)/6))+"px";
				}else{ dmyOBJ.style.top = -(maxH-Sh)+"px"; }

				if(allWidth <= Aw && maxH <= Sh){
					clearInterval(document.getElementById(id+"xxx").innerHTML);
					document.getElementById(id+"xxx").innerHTML = 0;
				}
			}, 25);

	}//if end
}

