/*@cc_on _d=document;eval('var document=_d')@*/
var IPosX,IPosY,LoadCnt,BgA = 0,White = new Image(),BaseBG = new Image(),backButton = new Image(),nextButton = new Image(),backButtonR = new Image(),nextButtonR = new Image(),ImageArr = new Array(),closeButton = new Image(),closeButtonR = new Image(),LoactionCheck,exScript2;

exScriptsLoad = function(){
	imageViewer();
	makeWaiter();
	if(exScript2) exScript2();
}

function mfInputCheck(){
	var d = document,arr = d.getElementsByName('set')[0].value.split(':'),arrL = arr.length,checks = new Array(),arr2,names;
	for(var i=0;i<arrL;i++){
		arr[i] = arr[i].split(',');
		if(arr[i][2] == 'on'){
			if(d.getElementsByName(arr[i][1])[0].value == ''){
				arr2 = new Array(arr[i][0],'を記入してください。');
				checks[i] = arr2.join('');
			}
		}
	}
	if(checks.length > 0){
		checks.unshift('未記入の項目があります。');
		checks = checks.join("\n");
		alert(checks);
		return false;
	}
}

function makeWaiter(){
	if(!mB('waiter')){
		var d = document,ele = d.createElement('DIV'),eles = ele.style,arr = new Array('<p class="waitertext"><span class="waitstr1">画像を読み込み中です...</span><br /><span class="waitstr2">Now Loading...</span></p>'),ele2,dw;
		ele.id = 'waiter';
		eles.position = ABFX;
		eles.top = '0px';
		if(MOSC == 1){
			if(IEver > 6) eles.filter = 'alpha(opacity=80)';
			eles.width = (IEver == 6)? '100px':eles.width
		}else{
//			if(undefined !== window.opera && "function" === typeof window.opera.version){
				eles.opacity = 0.8
/*			}else{
				eles.backgroundColor = (NN7 == 1)? 'rgb(255,255,255)':'rgba(255,255,255,0.6)';
			}
*/
		}

		eles.visibility = 'hidden';
		ele.innerHTML =arr.join('');
		d.body.appendChild(ele);

		if(MOSC == 1 && IEver == 6){
			ele = d.createElement('IFRAME');
			eles = ele.style;
			ele.id = 'dwaiter';
			ele.scrolling = 'no';
			eles.position = ABFX;
			eles.width = '200px';
			eles.top = '0px';
			eles.backgroundColor = '#000';
			eles.zIndex = 251;
			eles.visibility = 'hidden';
			d.body.appendChild(ele);
		}
	}else{
		mB('waiter').style.visibility = 'visible'
	}
}

window.onunload = function(){
	aRemover();
	bRemover();
}

bRemover = function(){
	if(mB('waiter')) document.body.removeChild(mB('waiter'));
	if(mB('dwaiter')) document.body.removeChild(mB('dwaiter'));
	if(mB('basefield')) document.body.removeChild(mB('basefield'));
	if(mB('menufield')) document.body.removeChild(mB('menufield'));
	if(mB('ntimage')) document.body.removeChild(mB('ntimage'));
}

function setCenterring(x,y){
	if(!mB('waiter')) makeWaiter();
	var d = document,IPosX,IPosY,PosArray,ws = mB('waiter').style,arr = new Array(x,'px'),clientWidth = d.documentElement.clientWidth||d.body.clientWidth,cH = d.documentElement.clientHeight||d.body.clientHeight,scrollTop = d.documentElement.scrollTop||d.body.scrollTop,scrollLeft = d.documentElement.scrollLeft||d.body.scrollLeft,scrollHeight = d.documentElement.scrollHeight||d.body.scrollHeight,cstyle,dwPlus = 0;
	ws.width = (x == '100%'|| x == 'auto')? x:arr.join('');
	arr[0] = y;
	ws.height = (y == 'auto')? y:arr.join('');

	cstyle = mB('waiter').currentStyle || document.defaultView.getComputedStyle(mB('waiter'), '');
	if(MOSC == 1 && IEver == 6){
		var dw = mB('dwaiter').style;
		dwPlus = (cstyle.paddingRight)? numberGet(cstyle.paddingRight):0;
		dwPlus = (cstyle.paddingLeft)? numberGet(cstyle.paddingLeft):dwPlus;
		arr = new Array(x + dwPlus,'px');
		dw.width = (x == '100%'|| x == 'auto')? mB('waiter').offsetWidth:arr.join('');
		dwPlus = (cstyle.paddingTop)? numberGet(cstyle.paddingTop):0;
		dwPlus = (cstyle.paddingBottom)? numberGet(cstyle.paddingBottom):dwPlus;
		arr[0] = y + dwPlus;
		dw.height = (y == 'auto')? mB('waiter').offsetHeight - 10:arr.join('');
		IPosX = (x == '100%')? x:scrollLeft + (clientWidth >> 1) - (mB('waiter').offsetWidth >> 1);
		IPosY = scrollTop + (cH >> 1) - (mB('waiter').offsetHeight >> 1);
		arr[0] = IPosX;
		dw.left = (x == '100%')? '0px':arr.join('');
		arr[0] = IPosY;
		dw.top = arr.join('');
		dw.visibility = 'visible';
//		window.status = mB('dwaiter').offsetHeight + ' ' + mB('waiter').offsetHeight;

	}else{
		if(cstyle.position == 'absolute'){
			IPosX = (x == '100%')? x:scrollLeft + (clientWidth >> 1) - (mB('waiter').offsetWidth >> 1);
			IPosY = scrollTop + (cH >> 1) - (mB('waiter').offsetHeight >> 1);
		}else{
			IPosX = (x == '100%')? 0:scrollLeft + (clientWidth >> 1) - (mB('waiter').offsetWidth >> 1);
			IPosY = (cH >> 1) - (mB('waiter').offsetHeight >> 1)
		}
	}

	arr[0] = IPosX;
	ws.left = (x == '100%')? '0px':arr.join('');
	arr[0] = IPosY;
	ws.top = arr.join('');
	ws.visibility = 'visible';
}

function imageViewer(){
	var LocationStr = new String(window.location),d = document,ele = document.getElementsByTagName("A"),eleL = ele.length,arr = new Array("javascript:displayLargeImage('",
	"",
	"',",
	'',
	")"),j = 0,str;
	for(var i=0;i<eleL;i++){
		if(ele[i].href.match(/\.(jpeg|jpg|gif|png)$/i)){
			arr[1] = new String(ele[i].href);
			arr[1] = arr[1].replace(/http:\/\//,'');
			arr[3] = j;
			ele[i].href = arr.join('');
			ImageArr[j] = i;
			j++;
		}
	}

	arr = new Array(Domain,'images/default/img_common/');
	arr = arr.join('');
	ImgDir = new Array(arr,'white.png');
	White.src = ImgDir.join('');
//	ImgDir[1] = 'largelogo.png';
//	BaseBG.src = ImgDir.join('');
	ImgDir[1] = 'backbutton_d.png';
	backButton.src = ImgDir.join('');
	ImgDir[1] = 'nextbutton_d.png';
	nextButton.src = ImgDir.join('')
	ImgDir[1] = 'backbutton_r.png';
	backButtonR.src = ImgDir.join('');
	ImgDir[1] = 'nextbutton_r.png';
	nextButtonR.src = ImgDir.join('');
	ImgDir[1] = 'closebutton_d.png';
	closeButton.src = ImgDir.join('');
	ImgDir[1] = 'closebutton_r.png';
	closeButtonR.src = ImgDir.join('');
}

function waiterClose(){
	var d = document;
	if(mB('waiter')){
		d.body.removeChild(mB('waiter'));
		if(MOSC == 1 && IEver == 6) d.body.removeChild(mB('dwaiter'));
	}
/*
	mB('waiter').style.visibility = 'hidden';
	if(MOSC == 1 && IEver == 6) mB('dwaiter').style.visibility = 'hidden';
*/
}

function ImageHide(e){
	var d = document;
	d.body.removeChild(mB('basefield'));
	d.body.removeChild(mB('menufield'));
	if(mB('largeimg_title')) document.body.removeChild(mB('largeimg_title'));
	if(mB('largeimg_comment')) document.body.removeChild(mB('largeimg_comment'));
	if(mB('prevanker')) d.body.removeChild(mB('prevanker'));
	if(mB('nextanker')) d.body.removeChild(mB('nextanker'));
	waiterClose();
	document.body.removeChild(mB('ntimage'));
	if(MOSC == 1 && IEver == 6) $('select').css("visibility",'visible');
}

displayLargeImage = function(iurl,num){
	var d = document,Nimg = d.createElement('DIV'),Ns = Nimg.style,arr,nextImg = num + 1,prevImg = num - 1,ele = d.getElementsByTagName('A'),prevTag,nextTag,closeTag,str = new Array('http://',iurl),comm,comS,comV,cstyle,bfKeep = 0,scrollTop = d.documentElement.scrollTop||d.body.scrollTop,scrollLeft = d.documentElement.scrollLeft||d.body.scrollLeft,buttonSrc,IE6 = (MOSC == 1 && IEver == 6)? 1:0,blankBtn,ie6Png = '',naviTag,ie6Height = '';
	str = str.join('');
	if(NN7 == 1){
		window.open(str,"_blank");
	}else{
		IPosX = (db.clientWidth >> 1) + scrollLeft;
		IPosY = (db.clientHeight >> 1) + scrollTop;
		LoadCnt = 150;

		blankBtn = new Array(Domain,'images/cst_img_common/blank.gif');
		blankBtn = blankBtn.join('');
		if(mB('prevanker')) d.body.removeChild(mB('prevanker'));
		if(ele[ImageArr[prevImg]]){
			prevTag = new String(ele[ImageArr[prevImg]].href);
			if(IE6 == 1){
				buttonSrc = blankBtn;
				arr = new Array(' style=filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(Src=',backButton.src,',SizingMethod=crop)');
				ie6Png = arr.join('');
			}else{
				buttonSrc = backButton.src;
			}
			naviTag = d.createElement('A');
			naviTag.id = 'prevanker';
			naviTag.href = prevTag;
			naviTag.style.visibility = 'hidden';
			naviTag.style.position = 'absolute';
			naviTag.style.zIndex = 121;
			naviTag.className = 'nextlink';
			arr = new Array('<img src="',buttonSrc,'" width="',backButton.width,'" height="',backButton.height,'" alt="Back" title="一つ前の画像" onmouseover="ezRollOver(this)" onmouseout="ezRollOut(this)"',ie6Png,' />');
			naviTag.innerHTML = arr.join('');
			d.body.appendChild(naviTag);
		}

		if(mB('nextanker')) d.body.removeChild(mB('nextanker'));
		if(ele[ImageArr[nextImg]]){
			nextTag = new String(ele[ImageArr[nextImg]].href);
			if(IE6 == 1){
				buttonSrc = blankBtn;
				arr = new Array(' style=filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(Src=',nextButton.src,',SizingMethod=crop)');
				ie6Png = arr.join('');
			}else{
				buttonSrc = nextButton.src;
			}
			naviTag = d.createElement('A');
			naviTag.id = 'nextanker';
			naviTag.className = 'nextlink';
			naviTag.href = nextTag;
			naviTag.style.visibility = 'hidden';
			naviTag.style.position = 'absolute';
			naviTag.style.zIndex = 121;
			arr = new Array('<img src="',buttonSrc,'" width="',nextButton.width,'" height="',nextButton.height,'" alt="Next" title="次の画像" onmouseover="ezRollOver(this)" onmouseout="ezRollOut(this)"',ie6Png,' />');
			naviTag.innerHTML = arr.join('');
			d.body.appendChild(naviTag);

		}

		if(IE6 == 1){
			buttonSrc = blankBtn;
			arr = new Array(' style=filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(Src=',closeButton.src,',SizingMethod=crop)');
			ie6Png = arr.join('');
			ie6Height = new Array(' height="',closeButton.height,'"');
			ie6Height = ie6Height.join('');
		}else{
			buttonSrc = closeButton.src;
		}

		closeTag = new Array('<a class="nextlink" href="javascript:void(0);" onclick="ImageHide()"><img src="',buttonSrc,'" width="',closeButton.width,'"',ie6Height,' alt="Close" title="閉じる" onmouseover="ezRollOver(this)" onmouseout="ezRollOut(this)"',ie6Png,' /></a>');
		closeTag = closeTag.join('');
		

		if(!mB('basefield')){
			var BaseField = d.createElement('DIV'),BFs = BaseField.style,MenuField = d.createElement('DIV'),MFs = MenuField.style;
			BaseField.id = 'basefield';
			BFs.position = ABFX;
			BFs.zIndex = 100;
//			BFs.cursor = 'pointer';
			BFs.top = '0px';
			BFs.left = '0px';
			BFs.backgroundRepeat = 'no-repeat';
//			var BFsBG = new Array('url(',BaseBG.src,')');
//			BFs.backgroundImage = BFsBG.join('');
			BFs.width = '100%';
			d.body.appendChild(BaseField);

			MenuField.id = 'menufield';
			MFs.position = 'absolute';
			MFs.zIndex = 101;
			MFs.left = '0px';
			MFs.backgroundColor = 'transparent';
			MFs.width = '100%';
			d.body.appendChild(MenuField);
			bfKeep = 1;
		}
		cstyle = mB('basefield').currentStyle || document.defaultView.getComputedStyle( mB('basefield'), '');
		if(cstyle.display == 'none') bfKeep = 1;
		arr = new Array(scrollTop,'px');
		mB('menufield').style.top = arr.join('');

		if(MOSC == 1 && IEver == 6 ){
			var ie6bp = scrollTop + db.clientHeight * 0.6;
			ie6bp += 'px';
			mB('basefield').style.backgroundPosition = 'center ' + ie6bp;
			mB('basefield').style.height = db.scrollHeight + 'px'
		}else{
			mB('basefield').style.backgroundPosition = 'center 85%';
			mB('basefield').style.height = '100%';
		}
		mB('basefield').innerHTML = '&nbsp;';
		mB('basefield').style.display = 'block';
//		arr = new Array(prevTag,closeTag,nextTag);
//		mB('menufield').innerHTML = arr.join('');
		mB('menufield').innerHTML = closeTag;
		mB('menufield').style.display = 'block';

		if(mB('ntimage')) d.body.removeChild(mB('ntimage'));

		Nimg.id = 'ntimage';
		Ns.position = 'absolute';
		Ns.zIndex = 120;
		Ns.cursor = 'pointer';
		Ns.visibility = 'hidden';
		Ns.clip = 'rect(0px,0px,0px,0px)';
		Ns.border = '10px solid #fff';
		arr = new Array('url("',str,'")');
		Ns.backgroundImage = arr.join('');
		Ns.backgroundRepeat = 'no-repeat';
		arr = new Array('<img id="white" src="',str,'" />');
		Nimg.innerHTML = arr.join('');
		d.body.appendChild(Nimg);

		if(mB('largeimg_title')) document.body.removeChild(mB('largeimg_title'));
		if(ele[ImageArr[num]].title){
			comm = d.createElement('P');
			comm.id = 'largeimg_title';
			comS = comm.style;
			comS.position = 'absolute';
			comS.zIndex = 121;
			comS.fontSize = '5em';
			arr = new Array(db.clientWidth,'px');
			comS.width = arr.join('');
			comS.left = '0px';
			arr = new Array((db.clientHeight >> 1) - 150 + scrollTop,'px');
			comS.top = arr.join('');
			comV = ele[ImageArr[num]].title.replace(/ {2}/g,'<br />');
			comm.innerHTML = comV;
			d.body.appendChild(comm);
			if(MOSC == 1){
				cstyle = mB('largeimg_title').currentStyle;
				keepFilter = cstyle.filter;
			}
		}

		if(mB('largeimg_comment')) d.body.removeChild(mB('largeimg_comment'));
		if(mB('subcomm') && subComments[num]){
			if(subComments[num] != 'none'){
				comm = d.createElement('P');
				comm.id = 'largeimg_comment';
				comS = comm.style;
				comS.position = 'absolute';
				comS.zIndex = 121;
				comS.fontSize = '2em';
				arr = new Array(db.clientWidth,'px');
				comS.width = arr.join('');
				comS.left = '0px';
				arr = new Array((db.clientHeight >> 1) + scrollTop,'px');
				comS.top = arr.join('');
				comS.visibility = 'hidden';
				comm.innerHTML = subComments[num];
				d.body.appendChild(comm);
			}
		}

		if(MOSC == 1){
			if(bfKeep == 1){
				mB('basefield').style.filter = 'alpha(opacity=0)';
				mB('basefield').setAttribute("onclick",new Function("ImageHide();"));
			}else{
				mB('basefield').style.filter = 'alpha(opacity=75)';
			}
			mB('white').style.filter = 'alpha(opacity=100)';

			if(typeof db.style.outline != 'undefined'){
				mB('basefield').setAttribute('onclick',"ImageHide();");
				mB('ntimage').setAttribute('onclick',"ImageHide();");
				mB('ntimage').setAttribute('onmouseover',"naviAlpha(1);");
				mB('ntimage').setAttribute('onmouseout',"naviAlpha(0);");
			if(mB('largeimg_title')) mB('largeimg_title').setAttribute('onclick',"ImageHide();");
				if(mB('largeimg_comment')) mB('largeimg_comment').setAttribute('onclick',"ImageHide();");
			}else{
				mB('basefield').setAttribute("onclick",new Function("ImageHide();"));
				mB('ntimage').setAttribute("onclick",new Function("ImageHide();"));
				mB('ntimage').setAttribute("onmouseover",new Function("naviAlpha(1);"));
				mB('ntimage').setAttribute("onmouseout",new Function("naviAlpha(0);"));
				if(mB('largeimg_title')) mB('largeimg_title').setAttribute("onclick",new Function("ImageHide();"));
				if(mB('largeimg_comment')) mB('largeimg_comment').setAttribute("onclick",new Function("ImageHide();"));
		}
			if(IEver == 6){
				arr = new Array(scrollTop,'px');
				mB('menufield').style.top = arr.join('');
				$('select').css("visibility",'hidden');
			}
		}else{
			if(bfKeep == 1){
				mB('basefield').style.opacity = 0;
				mB('basefield').setAttribute('onclick',"ImageHide();");
			}else{
				mB('basefield').style.opacity = 0.75;
			}
			mB('ntimage').setAttribute('onclick',"ImageHide();");
			mB('ntimage').setAttribute('onmouseover',"naviAlpha(1);");
			mB('ntimage').setAttribute('onmouseout',"naviAlpha(0);");
			if(mB('largeimg_title')) mB('largeimg_title').setAttribute('onclick',"ImageHide();");
			if(mB('largeimg_comment')) mB('largeimg_comment').setAttribute('onclick',"ImageHide();");
			mB('white').style.opacity = 1;
			BgA = 0;
		}

		arr = new Array('<p class="waitertext"><span class="waitstr1">画像を読み込み中です...</span><br /><span class="waitstr2">Now Loading...</span></p>');
		if(!mB('waiter')) makeWaiter();
		mB('waiter').innerHTML = arr.join('');
		setCenterring(200,'auto');
		boxAnimation(mB('basefield'),0,0.7,500,0,bfKeep);
	}
}

function stripeColor(EleN){
	var d = document,ele = d.getElementsByTagName(EleN),eleL = ele.length;
	for(var i=0;i<eleL;i++){
		ele[i].className = (i % 2 == 0)? ele[i].className + ' stripe':ele[i].className;
	}
}

function naviAlpha(MODE){
	if(MODE == 1){
		if(mB('prevanker')) mB('prevanker').style.visibility = 'hidden';
		if(mB('nextanker')) mB('nextanker').style.visibility = 'hidden';
	}else{
		if(mB('prevanker')) mB('prevanker').style.visibility = 'visible';
		if(mB('nextanker')) mB('nextanker').style.visibility = 'visible';
	}
}

/*** Piro氏[http://piro.sakura.ne.jp/]のコードを参考にしています ***/
function boxAnimation(aElement, aStart, aEnd,Dur,MODE,bfKeep){
	var d = document,delta = aEnd - aStart,duration  = Dur,startTime =(new Date()).getTime(),IEalpha = 100,arr,timer,lMOSC = MOSC;
	timer = setInterval(function() {
		var Nt = (new Date()).getTime(),progress = Math.min(1,(Nt - startTime) / duration),clipping = (progress == 1)? aEnd:aStart + (delta * Math.sin((progress * 90) * Math.PI / 180 )),Clipper,scrollTop = d.documentElement.scrollTop||d.body.scrollTop;
		if(MODE == 1){
			if(!mB('white')) return;
			Wt = mB('white').style,Clipper = new Array('rect(0px,',clipping + 20,'px,',clipping + 20,'px,0px)');
				if(lMOSC == 1){
					 IEalpha = 100 - progress * 100;
					 arr = new Array('alpha(opacity=',IEalpha,')');
					Wt.filter = arr.join('');
					if(mB('largeimg_title')){
						mB('largeimg_title').style.filter = arr.join('');
					}
				}else{
					Wt.opacity = 1 - progress;
					if(mB('largeimg_title')){
						mB('largeimg_title').style.opacity = 1 - progress;
					}
				}
				try{
					void(0);
					mB('ntimage').style.clip = Clipper.join('');
				}catch(e){
					waiterClose();
					clearInterval(timer);
				}
			if(progress == 1){
				waiterClose();
				if(mB('largeimg_title')){
					arr = new Array(54 + scrollTop,'px');
					mB('largeimg_title').style.top =arr.join('');
					mB('largeimg_title').style.fontSize = '3em';
					if(lMOSC == 1){
						arr = new Array('alpha(enabled=0) ',keepFilter);
						mB('largeimg_title').style.filter = arr.join('');
					}else{
						mB('largeimg_title').style.opacity = 1;
					}
				}
				if(mB('largeimg_comment')){
					var lcbounds,lcy;
					lcbounds = mB('ntimage').getBoundingClientRect();
					arr = new Array(lcbounds.top + mB('white').height + scrollTop + 60,'px');
					mB('largeimg_comment').style.top = arr.join('');
					 mB('largeimg_comment').style.visibility = 'visible';
				}
				clearInterval(timer);
				if(mB('prevanker')){
					arr = new Array(mB('ntimage').offsetTop + (mB('ntimage').offsetHeight >> 1) - (mB('prevanker').offsetHeight >> 1) ,'px');
					mB('prevanker').style.top = arr.join('');
					arr = new Array(mB('ntimage').offsetLeft - (mB('prevanker').offsetWidth >> 1),'px');
					mB('prevanker').style.left = arr.join('');
					mB('prevanker').style.visibility = 'visible';
				}
				if(mB('nextanker')){
					arr = new Array(mB('ntimage').offsetTop + (mB('ntimage').offsetHeight >> 1) - (mB('nextanker').offsetHeight >> 1),'px');
					mB('nextanker').style.top = arr.join('');
					arr = new Array(mB('ntimage').offsetLeft + mB('ntimage').offsetWidth - (mB('nextanker').offsetWidth >> 1) ,'px');
					mB('nextanker').style.left = arr.join('');
					mB('nextanker').style.visibility = 'visible';
				}
			}
		}else{
			if(!mB('white')) return;
			if(progress == 1){
				var Ns = mB('ntimage').style,Wt = d.images['white'],NW = Wt.width,NH = Wt.height,ClipSize;
				if(Wt.complete){
					waiterClose();
					arr = new Array(scrollTop + 100,'px');
					Ns.top = arr.join('');
					arr = new Array(IPosX - (NW >> 1),'px');
					Ns.left = arr.join('');
					Wt.width = NW;
					Wt.height = NH;
					Wt.src = White.src;
					Ns.visibility = 'visible';
					ClipSize = (NW > NH)? NW:NH;
					clearInterval(timer);
					boxAnimation(mB('ntimage'),0,ClipSize,500,1);
				}
			}else{
				if(bfKeep == 1){
					if(lMOSC == 1){
						 IEalpha = clipping * 100;
						 arr = new Array('alpha(opacity=',IEalpha,')');
						 aElement.style.filter = arr.join('')
					}else{
						aElement.style.opacity = clipping;
					}
				}
			}
		}
	}, 10);
}
