/*プレゼンテーションレイヤーの表示トグル*/
var presentationLayerContext = false;
function presentationDisplayer(replaceURL){
			
	//エレメントの表示位置を規定
	elementCenteringSize("presentationLayer");
	
	//レイヤー群のCSSポジションを「absolute」→「fixed」に変更
	changePositionStatus("presentationLayer");
	
	if(!presentationLayerContext){
		document.getElementById("presentationLayer").style.visibility = "visible";
		document.getElementById("blackMaskLayer").style.visibility = "visible";
		
		//ユーザーエージェントでFF（Camino含む）とそれ以外を分岐
		if(navigator.userAgent.indexOf("Firefox") != -1){
			var swfPath = document.getElementById("presentation1").src;
			document.getElementById("presentation1").src = swfPath;
			
		//FF以外の場合の処理
		}else{
		
			//SWF制御
			document.presentation1.GotoFrame(500);
			document.presentation1.GotoFrame(1);
			document.presentation1.Play();
			
		}
		
		presentationLayerContext = true;
	}else if(presentationLayerContext){
		document.getElementById("presentationLayer").style.visibility = "hidden";
		document.getElementById("blackMaskLayer").style.visibility = "hidden";
		presentationLayerContext = false;
	}
	return;
}

/*図版表示レイヤーの表示トグル*/
var figLayerContext = false;
function figDisplayer(replaceURL){
	
	document.getElementById("ifrFig").src = replaceURL;
			
	//エレメントの表示位置を規定
	elementCenteringSize("figLayer");
	
	//レイヤー群のCSSポジションを「absolute」→「fixed」に変更
	changePositionStatus("figLayer");
	
	if(!figLayerContext){
		document.getElementById("figLayer").style.visibility = "visible";
		document.getElementById("blackMaskLayer").style.visibility = "visible";
		figLayerContext = true;
	}else if(figLayerContext){
		document.getElementById("figLayer").style.visibility = "hidden";
		document.getElementById("blackMaskLayer").style.visibility = "hidden";
		figLayerContext = false;
	}
	return;
}

/*ウインドウとエレメントのサイズを取得して画面中央に配置させる数値を返す関数*/
function elementCenteringSize(elementName){
	
	//ウインドウ内側のサイズを取得
	var windowWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
	var windowHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
	
	//エラー表示エレメントのサイズ
	var noticeElementHeight = document.getElementById(elementName).clientHeight;
	var noticeElementWidth = document.getElementById(elementName).clientWidth;
	
	//ベースHTMLのスクロール量
	var baseHTMLscrollHeight = document.documentElement.scrollTop || document.body.scrollTop;
	var baseHTMLscrollWidth = document.documentElement.scrollLeft || document.body.scrollLeft;
	
	//ページがスクロールされている場合への対処としてスクロール分を加算してウインドウセンター位置を設定。
	var centeringHeight = (windowHeight/2)-(noticeElementHeight/2);
	var centeringWidth = (windowWidth/2)-(noticeElementWidth/2);
	
	//出力
	document.getElementById(elementName).style.top = centeringHeight + "px";
	document.getElementById(elementName).style.left = centeringWidth + "px";
	
	return;
}

/*レイヤー群のCSSポジションを「absolute」→「fixed」に変更*/
/*IE6対応で、最初のページ読み込み時に「absolute」である必要があるため*/
function changePositionStatus(layerName) {
	
	document.getElementById("blackMaskLayer").style.position = "fixed";
	document.getElementById(layerName).style.position = "fixed";
	
	return;
	
}


/*WPTools図版専用*/
function wptoolsDiagramDisplayer(replaceURL){
	
	document.getElementById("ifrFig").src = replaceURL;
			
	//エレメントの表示位置を規定
	wptoolsElementCenteringSize("wptoolsDiagramLayer");
	
	//レイヤー群のCSSポジションを「absolute」→「fixed」に変更
	wptoolsChangePositionStatus("wptoolsDiagramLayer");
	
	if(!figLayerContext){
		document.getElementById("wptoolsDiagramLayer").style.visibility = "visible";
		document.getElementById("blackMaskLayer").style.visibility = "visible";
		figLayerContext = true;
	}else if(figLayerContext){
		document.getElementById("wptoolsDiagramLayer").style.visibility = "hidden";
		document.getElementById("blackMaskLayer").style.visibility = "hidden";
		figLayerContext = false;
	}
	return;
}

function wptoolsFigDisplayer(replaceURL){
	
	document.getElementById("ifrFig").src = replaceURL;
			
	//エレメントの表示位置を規定
	wptoolsElementCenteringSize("wptoolsFigLayer");
	
	//レイヤー群のCSSポジションを「absolute」→「fixed」に変更
	wptoolsChangePositionStatus("wptoolsFigLayer");
	
	if(!figLayerContext){
		document.getElementById("wptoolsFigLayer").style.visibility = "visible";
		document.getElementById("blackMaskLayer").style.visibility = "visible";
		figLayerContext = true;
	}else if(figLayerContext){
		document.getElementById("wptoolsFigLayer").style.visibility = "hidden";
		document.getElementById("blackMaskLayer").style.visibility = "hidden";
		figLayerContext = false;
	}
	return;
}

function wptoolsChangePositionStatus(layerName) {
	
	document.getElementById("blackMaskLayer").style.position = "fixed";
	//document.getElementById(layerName).style.position = "fixed";
	
	return;
	
}

function wptoolsElementCenteringSize(elementName){
	
	//ウインドウ内側のサイズを取得
	var windowWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
	var windowHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
	
	//エラー表示エレメントのサイズ
	var noticeElementHeight = document.getElementById(elementName).clientHeight;
	var noticeElementWidth = document.getElementById(elementName).clientWidth;
	
	//ベースHTMLのスクロール量
	var baseHTMLscrollHeight = document.documentElement.scrollTop || document.body.scrollTop;
	var baseHTMLscrollWidth = document.documentElement.scrollLeft || document.body.scrollLeft;
	
	//ページがスクロールされている場合への対処としてスクロール分を加算してウインドウセンター位置を設定。
	var centeringHeight = (windowHeight/2)-(noticeElementHeight/2) + baseHTMLscrollHeight;
	var centeringWidth = (windowWidth/2)-(noticeElementWidth/2) + baseHTMLscrollWidth;
	
	//出力
	if(centeringHeight>21){
		document.getElementById(elementName).style.top = centeringHeight + "px";
	}else{
		document.getElementById(elementName).style.top = "20px";
	}
	if(centeringWidth>21){
		document.getElementById(elementName).style.left = centeringWidth + "px";
	}else{
		document.getElementById(elementName).style.left = "20px";
	}
	return;
}
