/*-----------------------------------------------------------------------------
	モジュール:top.js
	作成日:2007/03/14
	作成者:crd00053

 *
 *
 *ポータルサイト側で呼び出す関数名は、次の通りです。
 *　公開：openWindowP
 *　社内：openWindowI
 *
 *

--------------------------------------------------------------------------------*/

var iwinNm;
var pwinNm;
var ILOGIN_WIN_NM;
var PLOGIN_WIN_NM;
var ILOGIN_WIN_KEY = "iloginkey";
var PLOGIN_WIN_KEY = "ploginkey";


/*
 * 公開用ログイン画面を表示させる
 */
function openWindowP( url ){
	//作成したウィンドウが存在し、かつ、閉じられていない場合
	if(pwinNm && !pwinNm.closed) {
		//alert("作成したウィンドウが存在し、かつ、閉じられていない場合");
		
		//最前面に表示する（パターン２）
		pwinNm.focus();
	}
	//Cookie変数（ウィンドウ名）がある場合
	else if(getCookie(PLOGIN_WIN_KEY) != "") {
		//alert("Cookie変数（ウィンドウ名）がある場合" + getCookie("iloginkey"));

		//Cookie変数（ウィンドウ名）の名前でサブウィンドウを表示する（パターン４）
		PLOGIN_WIN_NM = getCookie(PLOGIN_WIN_KEY);
		pwinNm = pWindowOpen(url);
	}else {
		//alert("パターン１、３");

		// 日付でサブウィンドウ名を作成する（パターン３で別ウィンドウを開くため）
		var today = new Date();
		PLOGIN_WIN_NM = "MOS" + today.getFullYear() + zeroPad(today.getMonth()) + zeroPad(today.getDate()) +  zeroPad(today.getHours()) + zeroPad(today.getMinutes()) + zeroPad(today.getSeconds());

		setCookies(PLOGIN_WIN_KEY, PLOGIN_WIN_NM);   //その場限りのCookieを作成する。IEを閉じたり（ログイン画面とポータルサイト）、別IE（IEアイコンから）を立ち上げたりするとCookieが消滅するようにする

		pwinNm = pWindowOpen(url);    //日付でサブウィンドウを作成する
	}
}


/*
 * 社内用ログイン画面を表示させる
 */
function openWindowI( url ){
	//作成したウィンドウが存在し、かつ、閉じられていない場合
	if(iwinNm && !iwinNm.closed) {
		//alert("作成したウィンドウが存在し、かつ、閉じられていない場合");
		
		//最前面に表示する（パターン２）
		iwinNm.focus();
	}
	//Cookie変数（ウィンドウ名）がある場合
	else if(getCookie(ILOGIN_WIN_KEY) != "") {
		//alert("Cookie変数（ウィンドウ名）がある場合" + getCookie("iloginkey"));

		//Cookie変数（ウィンドウ名）の名前でサブウィンドウを表示する（パターン４）
		ILOGIN_WIN_NM = getCookie(ILOGIN_WIN_KEY);
		iwinNm = iWindowOpen(url);
	}else {
		//alert("パターン１、３");

		// 日付でサブウィンドウ名を作成する（パターン３で別ウィンドウを開くため）
		var today = new Date();
		ILOGIN_WIN_NM = "MOS" + today.getFullYear() + zeroPad(today.getMonth()) + zeroPad(today.getDate()) +  zeroPad(today.getHours()) + zeroPad(today.getMinutes()) + zeroPad(today.getSeconds());

		setCookies(ILOGIN_WIN_KEY, ILOGIN_WIN_NM);   //その場限りのCookieを作成する。IEを閉じたり（ログイン画面とポータルサイト）、別IE（IEアイコンから）を立ち上げたりするとCookieが消滅するようにする

		iwinNm = iWindowOpen(url);    //日付でサブウィンドウを作成する
	}
}


/*
 * 社内用画面を表示させる
 */
function iWindowOpen( url ){
	//画面解像度に合わせてサイズを変更する

	var w = 0;
	var h = 0;
// 2007/11/09 追加
	var fgFlg = false;
	//var top  = 0;
	//var left = 0;

	//横幅が想定解像度以上の場合
	if (screen.width >= 1280) {
		w = 1280 -10;
	//	left = (screen.width  -  w) / 2; //TODO 画面中心を求める
	}
	else {
// 2007/11/09 追加
		fgFlg = true;
		w = screen.width - 10;
	}

	//縦幅が想定解像度以上の場合
	if (screen.height >= 1024) {
		h = 1024 - 94;
	//	top = (screen.height - 60 - h) / 2; //画面中心を求める 画面の縦の長さ - タスクバーの長さ（３０固定*２）- ウィンドウの縦の長さ
	}
	else {
// 2007/11/09 追加
		fgFlg = true;
		h = screen.height - 94;
	}

	var features='';
	features='toolbar=no,';
	features+='location=no,';
	features+='status=yes,';
	features+='menubar=no,';
	features+='width='  +  w + ',';
	features+='height=' +  h + ',';
// 2007/11/09 修正 start
	if (fgFlg){
		features+='scrollbars=yes,';
	}else{
		features+='scrollbars=no,';
	}
// 2007/11/09 修正 end
	features+='resizable=yes,';
	features+='left='   + 0 +',';
	features+='top='   +   0;

	var subWindow=window.open(url, ILOGIN_WIN_NM, features);
	subWindow.focus();

	return subWindow;
}


/*
 * 公開用画面を表示させる
 */
function pWindowOpen( url ){
	//画面解像度に合わせてサイズを変更する
	//座標の設定はサーバー側のJs部品で行う

	var w = 0;
	var h = 0;
// 2007/11/09 追加
	var fgFlg = false;
	//var top  = 0;
	//var left = 0;

	//横幅が想定解像度以上の場合
	if (screen.width >= 1024) {
		w = 1024 -10;	//1014
		//left = (screen.width  -  w) / 2; //TODO 画面中心を求める
	}
	else {
// 2007/11/09 追加
		fgFlg = true;
		w = screen.width - 10;
	}

	//縦幅が想定解像度以上の場合
	if (screen.height >= 768) {
		h = 768 - 129;	//650
		//top = (screen.height - 60 - h) / 2; //画面中心を求める 画面の縦の長さ - タスクバーの長さ（３０固定*２）- ウィンドウの縦の長さ
	}
	else {
// 2007/11/09 追加
		fgFlg = true;
		h = screen.height - 129;
	}

	var features='';
	features='toolbar=no,';
	features+='location=yes,';
	features+='status=yes,';
	features+='menubar=no,';
	features+='width='  +  w + ',';
	features+='height=' +  h + ',';
// 2007/11/09 修正 start
	if (fgFlg){
		features+='scrollbars=yes,';
	}else{
		features+='scrollbars=no,';
	}
// 2007/11/09 修正 end
	features+='resizable=yes,';
	features+='left='   + 0 +',';
	features+='top='   +   0;

	var subWindow=window.open(url, PLOGIN_WIN_NM, features);
	subWindow.focus();

	return subWindow;
}

/*
 * Cookieに値をセットする。
 */
function setCookies(key, values){
	document.cookie = key + "=" + escape(values) + ";";
}

/*
 * Cookieから引数で指定したkeyの値を取得する。
 */
function getCookie(key){
	var strArray;
	var i;
	strArray = document.cookie.split(";");
	for (i=0; i<strArray.length; i++){
		var strKey = strArray[i].substring(0, strArray[i].indexOf("="));
		if (key == strKey){
			return strArray[i].substring(strArray[i].indexOf("=") + 1);
		}
	}
	return "";
}

/*
 * ００の書式にして値を返す。
 */
function zeroPad(num){
	
	if(num<10){
		var strNum = "0" + num;
		return strNum;
	}
	else{
		return num;
	}
}

