/* 
関数一覧

gJavaS_Open_Help(in_Path, in_help_no, in_Mode)	ヘルプを表示する
*/

function gJavaS_Open_Help(in_Path, in_Help_Id, in_Mode)
{
	javascript:window.open(in_Path + '?help_id=' + in_Help_Id + '&mode=' + in_Mode,'win_help','resizable=yes,toolbar=yes,status=yes,location=yes,directories=no,menubar=yes,scrollbars=yes,width=400,height=400,left=0,top=0')
}

function gJavaS_Open_prof(in_Path, in_USER_ID)
{
//	targetに「ハイフンが入るとエラーになります」
	javascript:window.open(in_Path,'win_prof','resizable=yes,toolbar=no,status=no,location=no,directories=no,menubar=no,scrollbars=yes,width=600,height=570,left=0,top=0')
}










/*
《総合》
JavaSAllErrChk(CheckForm,inText,Title,Type,MaxLength,NullFlag,UrlFlag)	入力された文字列の総合チェックを行う
gJ_SubWindowOpener(inType,inPath)	サブウィンドウを呼び出す統合関数


《汎用》
JavaSNullChk(inText)	入力された情報がＮｕｌｌのみかチェックする
JavaSStrConv(inText)	入力された情報の文字数を返す
JavaSInLen(inText)		入力された情報に制御文字がないかチェックする
JavaSisDate(inText)		入力された情報が日付型として正しいかチェックする
JavaSisNumeric(inText)	入力された文字が数字のみかチェックする
JavaSdateSB(InText_A,InText_B)	入力された日付の「A<B」をチェックする
JavaSChange(inText)		入力された文字中の/を|に変換する

gJ_HrefUrlEXchange(inURL,inParam,inOnOffFlag)	入力された文字列に意味を持たないランダム数を付加して返す
gJ_IsAllThisChr(sStr1,sStr2)		sStr1がsStr2中の文字以外を含まないかをチェックする

gJ_IsAllNum(sStr)		数字以外を含まないかを返す
gJ_IsNaturalNum(sStr)	自然数としての妥当性を返す
gJ_IsNum(sStr)			数値として妥当であるかを返す

gJ_IsDate( sStr )		日付データとして妥当であるかを返す
gJ_IsLeapYear(sYear)		閏年かどうかを返す

gJ_GetRandumMakeForDat()		日付からランダム文字列を作成する


《サブウィンドウ呼出し》
gJ_SubWindowOpener_Exp(inType,thisobjval,inFormName,inPath)	ミニウィンドウを呼び出す
現在はカレンダーとカラー設定に使用
上記2種類以外はgJ_SubWindowOpenerに統合


****************************************************************************
[関数名] JavaSAllErrChk
[概要]
入力された文字列の総合チェックを行う
PmpackC用関数として作成。V2でWssでも使用

[引数]
CheckForm：フォームオブジェクト
inText：チェック対象
Title：エラー表示メッセージのタイトル
Type：文字型
MaxLength：最大文字数
NullFlag：必須チェック		「1：必須」「0：チェック無し」
UrlFlag：制御文字チェック	「1：チェックあり」「0：チェック無し」

[返り値]:---
=============================================================================*/
function JavaSAllErrChk(CheckForm,inText,Title,Type,MaxLength,NullFlag,UrlFlag)
{
	var msg = '';
	var check_id = new Array('\\','\'',',','"','&','%','?','-',' ') ;

	if( NullFlag == 1 )
	{
		if( JavaSNullChk(inText) )
		{
			mes = Title + 'を入力してください。';
			alert(mes);
			CheckForm.focus();
			return false;
		}
	}

	if( MaxLength != 0 )
	{
		if( JavaSStrConv(inText) > MaxLength )
		{
			mes = Title + 'は ' + MaxLength + ' バイト以内で入力して下さい。';
			alert(mes);
			CheckForm.focus();
			return false;
		}
	}

	if( Type == 'INT')
	{
		if( JavaSisNumeric(inText) == false )
		{
			mes = Title + 'には数字を入力して下さい。';
			alert(mes);
			CheckForm.focus();
			return false;
		}
	}

	if( Type == 'ID')
	{
		n = new RegExp("　","g") ;
		if (n.test(inText))
		{
			mes = Title + 'に「全角スペース」は使用できません。' ;
			alert(mes);
			CheckForm.focus();
			return false;
		}

		for(j = 0; j < inText.length; j++)
		{
			wk = inText.charAt(j) ;

			for (i = 0; i < check_id.length; i++)
			{
				if (wk == check_id[i])
				{
					if (check_id[i] == ' ')
					{
						mes = Title + 'に「半角スペース」は使用できません。' ;
					}
					else
					{
						mes = Title + 'に「' + check_id[i] + '」は使用できません。' ;
					}
					alert(mes);
					CheckForm.focus();
					return false;
				}
			}
		}
	}

	if( Type == 'DAT' )
	{
		if( JavaSNullChk(inText) == false )
		{
			if( JavaSisDate(inText) == false )
			{
				mes = Title + 'が 日付として正しくありません。';
				alert(mes);
				CheckForm.focus();
				return false;
			}
		}
	}


	if( UrlFlag == 1 )
	{
		if( JavaSInLen(inText) )
		{
			mes = Title + 'には制御文字（&,%,?,-,[スペース])は使用できません。';
			alert(mes);
			CheckForm.focus();
			return false;
		}
	}

	return true;
}
// ****************************************************************************



/* ****************************************************************************
[関数名] JavaSNullChk
[概要]
入力された情報がＮｕｌｌのみかチェックする

[引数]
inText：チェック対象

[返り値]:「true：Nullのみ」「false：Nullではない」
=============================================================================*/
function JavaSNullChk(inText)
{
	var intxtlen;
	var chkmsg;
	var cnt;	
	var cwk ;
	var sp = '　' ;

	intxtlen = inText.length;


	if(intxtlen == '')
	{
		return true;
	}

	for(cnt=0 ; cnt < intxtlen ; cnt++)
	{
		chkmsg = inText.charAt(cnt);
		
		//if(chkmsg != ' ')
		//if(chkmsg !=' ' && chkmsg != '　' && escape(chkmsg) != '%0D' && escape(chkmsg) != '%0A')
		if(chkmsg != ' ' && escape(chkmsg) != '%0D' && escape(chkmsg) != '%0A')
		{
			cwk = (sp.length == 1) ? chkmsg : chkmsg + inText.charAt(++cnt) ;
			if (cwk != sp)
			{
				return false;
			}
			else ;
		}
		else
		{
			if(cnt == (intxtlen-1))
			{
				return true;
			}
		}
	}

	return true;
}
// ****************************************************************************



/* ****************************************************************************
[関数名] JavaSStrConv
[概要]
入力された情報の文字数を返す

[引数]
inText：チェック対象

[返り値]:文字数
=============================================================================*/
function JavaSStrConv(inText)
{
	var nCntMax=0;
	var nCnt=0;
	var nLen=0;
	var Code;


	nCntMax = inText.length;

	//if (navigator.appName == 'Netscape') 
	//{
	//	nLen = nCntMax;
	//}
	//else 
	//{
		for (nCnt=0,nLen=nCntMax; nCnt<nCntMax; nCnt++ )
		{
			Code = inText.charCodeAt(nCnt);
			
			if ( !(  (0 <= Code && Code <= 128) || (160 <= Code && Code <= 222) || (253 <= Code && Code <= 254) || ("ｦ".charCodeAt() <= Code && Code <= "ﾟ".charCodeAt()))) 
			{
				nLen++;
			}
		}
	//}

	return nLen;
}
// ****************************************************************************



/* ****************************************************************************
[関数名] JavaSInLen
[概要]
入力された情報に制御文字がないかチェックする

[引数]
inText：チェック対象

[返り値]:「true：制御文字あり」「false：制御文字なし」
=============================================================================*/
function JavaSInLen(inText)
{
	var nCntMax=0;
	var nCnt=0;

	var chemsg='';

	nCntMax = inText.length;
	for(nCnt=0 ; nCnt < nCntMax ; nCnt++ )
	{
		chkmsg = inText.charAt(nCnt);
		if( chkmsg == '&'|| chkmsg == '%'|| chkmsg == '?'|| chkmsg == '-'|| chkmsg == ' '|| chkmsg == '　' ) 
		{
			return true;
		}
	}

	return false;
}
// ****************************************************************************



/* ****************************************************************************
[関数名] JavaSisDate
[概要]
入力された情報が日付型として正しいかチェックする

[引数]
inText：チェック対象

[返り値]:「true：正しい」「false：正しくない」
=============================================================================*/
function JavaSisDate(inText)
{
	var Cnt;
	var Flag = 0;

	var InTextLen;

	var sText_y = '';
	var sText_m = '';
	var sText_d = '';
	var iText_y = 0;
	var iText_m = 0;
	var iText_d = 0;

	var CheckText = '';


	InTextLen = inText.length;


	for( Cnt = 0 ; Cnt < InTextLen ; Cnt++ )
	{
		CheckText = inText.charAt(Cnt);

		if( CheckText == '/' )
		{	
			Flag++;
		}
		else
		{
			
			if( CheckText >= 0 || CheckText < 10 )
			{
				if( Flag == 0 )
				{
					sText_y = sText_y + CheckText;
				}
				if( Flag == 1 )
				{
					sText_m = sText_m + CheckText;
				}
				if( Flag == 2 )
				{
					sText_d = sText_d + CheckText;
				}
			}
			else
			{
				return false;
			}

		}
	}


	//スラッシュの回数を数える（2回以外はエラー）
	if( Flag != 2 )	{
		return false;
	}
	//年をチェック
	//2桁の場合は70を基準とし4桁に修正する
	if( sText_y.length == 2)	{
		iText_y = eval(sText_y);
		if( iText_y < 50 )	{
			iText_y = iText_y + 2000;
		} else {
			iText_y = iText_y + 1900;
		}
	}else{
		iText_y = eval(sText_y);
	}
	if( iText_y.toString().length != 4 )	{
		return false;
	}

	//月をチェック（１〜12）
	iText_m = eval(sText_m);
	if( iText_m < 1 || iText_m > 12 ) {
		return false;
	}

	//日をチェック（１〜31）
	iText_d = eval(sText_d);
	if( iText_m == 1 || iText_m == 3 || iText_m == 5 || iText_m == 7 || iText_m == 8 || iText_m == 10 || iText_m == 12 ){
		if( iText_d < 1 || iText_d > 31 ){
			return false;
		}
	} else{
		if( iText_d < 1 || iText_d > 30 )	{
			return false;
		}
	}

	//閏年のロジック
	if( iText_m == 2 ){
		if( iText_y % 400 == 0 || (iText_y % 4 == 0 && iText_y % 100 != 0) ){
			if( iText_d > 29 )	{
				return false;
			}
		} else{
			if( iText_d > 28 )	{
				return false;
			}
		}
	}	

	return true;
}
// ****************************************************************************



/* ****************************************************************************
[関数名] JavaSisNumeric
[概要]
入力された文字が数字のみかチェックする

[引数]
inText：チェック対象

[返り値]:「true：正しい」「false：正しくない」
=============================================================================*/
function JavaSisNumeric(inText)
{
	var nCntMax=0;
	var nCnt=0;

	var Code;


	nCntMax = inText.length;

	for (nCnt=0; nCnt < nCntMax; nCnt++ )
	{
		Code = inText.charCodeAt(nCnt);
		if (!((48 <= Code && Code <= 57)))
		{
			return false;
		}
	}

	return true;
}
// ****************************************************************************



/* ****************************************************************************
[関数名] JavaSdateSB
[概要]
入力された日付の「A<B」をチェックする

[引数]
InText_A：チェック対象A
InText_B：チェック対象B

[返り値]:「true：正しい」「false：正しくない」
=============================================================================*/
function JavaSdateSB(InText_A,InText_B)
{
	var Cnt;
	var Flag;

	var CheckText;
	var InTextLen;

	var AnsText_A;
	var AnsText_B;

	var InText_y;
	var InText_m;
	var InText_d;



	Flag = 0;
	InText_y = '';
	InText_m = '';
	InText_d = '';
	InTextLen = InText_A.length;

	for( Cnt = 0 ; Cnt < InTextLen ; Cnt++ )
	{
		CheckText = InText_A.charAt(Cnt);

		if( CheckText == '/' )
		{	
			Flag++;
		}
		else
		{
			if( CheckText >= 0 || CheckText < 10 )
			{
				if( Flag == 0 )
				{
					InText_y = InText_y + CheckText;
				}
				if( Flag == 1 )
				{
					InText_m = InText_m + CheckText;

				}
				if( Flag == 2 )
				{
					InText_d = InText_d + CheckText;
				}
			}
		}
	}

	AnsText_A = InText_y;

	if( InText_m.length == 1 )
	{
		AnsText_A = AnsText_A + '0';
	}
	AnsText_A = AnsText_A + InText_m;

	if( InText_d.length == 1 )
	{
		AnsText_A = AnsText_A + '0';
	}
	AnsText_A = AnsText_A + InText_d;


	Flag = 0;
	InText_y = '';
	InText_m = '';
	InText_d = '';
	InTextLen = InText_B.length;

	for( Cnt = 0 ; Cnt < InTextLen ; Cnt++ )
	{
		CheckText = InText_B.charAt(Cnt);

		if( CheckText == '/' )
		{	
			Flag++;
		}
		else
		{
			if( CheckText >= 0 || CheckText < 10 )
			{
				if( Flag == 0 )
				{
					InText_y = InText_y + CheckText;
				}
				if( Flag == 1 )
				{
					InText_m = InText_m + CheckText;

				}
				if( Flag == 2 )
				{
					InText_d = InText_d + CheckText;
				}
			}
		}
	}



	if( JavaSNullChk(InText_A) || JavaSNullChk(InText_B))
	{
		return true;
	}
	else
	{
		AnsText_B = InText_y;

		if( InText_m.length == 1 )
		{
			AnsText_B = AnsText_B + '0';
		}
		AnsText_B = AnsText_B + InText_m;

		if( InText_d.length == 1 )
		{
			AnsText_B = AnsText_B + '0';
		}
		AnsText_B = AnsText_B + InText_d;


		if( AnsText_A > AnsText_B )
		{
			return false;
		}
	}

	return true;
}
// ****************************************************************************



/* ****************************************************************************
[関数名] JavaSChange
[概要]
入力された文字中の/を|に変換する
ネットスケープ4.0xのURL対応

[引数]
inText：変換対象

[返り値]:変換後文字列
=============================================================================*/
function JavaSChange(inText)
{
	var i;
	var InTextLen;
	var CheckText;
	var AnsText='';

	InTextLen = inText.length

	for( i=0 ; i < InTextLen ; i++ )
	{
		CheckText = inText.charAt(i);
		if( CheckText == '/' )
		{
			AnsText = AnsText + '|';
		}
		else
		{
			AnsText = AnsText + CheckText;
		}
	} 

	return AnsText;
}
// ****************************************************************************


/* ****************************************************************************
[関数名] gJ_HrefUrlEXchange
[概要]
入力された文字列に意味を持たないランダム数を付加して返す

[引数]
inURL：ランダム文字を追加する対象のURL文字列
inParam：URLに付加するクエリーストリング
inOnOffFlag：文字を付加するかどうかのフラグ（必要に応じてオフできる）
[0]文字付加を使用しない
[1]getdat()で付加する
[??]今後の拡張に使用する

[返り値]:---
=============================================================================*/
function gJ_HrefUrlEXchange(inURL,inParam,inOnOffFlag)
{
	var urlstr='';

	urlstr = inURL + inParam;

	if( inOnOffFlag == 1 )
	{
		if( inParam == '' )	{
			urlstr = urlstr + '?tempstr=' + gJ_GetRandumMakeForDat();
		}
		else {
			urlstr = urlstr + '&tempstr=' + gJ_GetRandumMakeForDat();
		}
	}
	
	//alert(urlstr);
	return urlstr;
}
// *****************************************************************************


/* ****************************************************************************
[関数名] gJ_GetRandumMakeForDat
[概要]
日付からランダム文字列を作成する

[引数]：---

[返り値]:
作成した文字列
=============================================================================*/
function gJ_GetRandumMakeForDat(){
	var theTime;
	var h,m,s
	
	theTime = new Date();

	h = theTime.getHours();
	m = theTime.getMinutes();
	s = theTime.getSeconds();
	
	return h + '' + m + '' + s;
}
// *****************************************************************************



/* ****************************************************************************
関  数：gJ_IsAllNum
機  能：数字型（0〜9のみを含む）かどうかを返す
引  数：(i) sStr （チェックする文字列）
復帰値：1 (0〜9のみである)
        0 (数字型ではない)
        -1(異常終了)
作成日：1998/12/9 
-更新日- ---更新者--- ------------------------内容---------------------------
=============================================================================*/
function gJ_IsAllNum(sStr){
	var sBuff="";
	var i;

	if(sStr == null)
		return -1;

	for(i=0; i<sStr.length ; i++){
		sBuff=sStr.charAt(i);
		if(sBuff=="0" || sBuff=="1" || sBuff=="2" || sBuff=="3" || sBuff=="4" || sBuff=="5" || sBuff=="6" || sBuff=="7" || sBuff=="8" || sBuff=="9" ){
				continue;
		}else{
			return 0;
		}
	}
	return 1;
}
//---------------------------------------------------------------------
//関  数：gJ_IsNaturalNum
//機  能：自然数としての妥当性を返す
//引  数：(i) sStr （チェックする値）
//復帰値：1 (妥当である)
//        0 (妥当でない)
//        -1(異常終了)
//作成日：1998/12/9 
//更新日：
//---------------------------------------------------------------------
function gJ_IsNaturalNum(sStr){

	if(sStr == "" || sStr==null)
		return 0;

	if(sStr.length>1 && sStr.charAt(0)==0)
		return 0;

	if(gJ_IsAllNum(sStr) != 1)
		return 0;

	return 1;
}

//---------------------------------------------------------------------
//関  数：gJ_IsNum
//機  能：数値として妥当であるかを返す
//        (符号、小数点、指数表現、10進数、8進数、16進数可)
//引  数：(i) sStr （チェックする文字列）
//復帰値：1 (妥当である)
//        0(妥当でない)
//        -1(異常終了)
//作成日：1998/12/9 
//更新日：
//---------------------------------------------------------------------
function gJ_IsNum(sStr){

	if(sStr == "" || sStr==null)
		return 0;

	if(sStr.indexOf(" ",0) != -1)
		return 0;

	if(isNaN(sStr)==true)
		return 0;

	return 1;
}

//---------------------------------------------------------------------
//関  数：gJ_IsAllThisChr
//機  能：sStr1がsStr2中の文字以外を含まないかをチェックする
//引  数：(i) sStr1（チェックする文字列）
//引  数：(i) sStr2 (構成文字列）
//復帰値： 1(含まない）
//         0(含む）
//        -1(異常終了)
//作成日：1998/12/9 
//更新日：
//---------------------------------------------------------------------
function gJ_IsAllThisChr(sStr1,sStr2){
	var i;

	if(sStr1==null || sStr2==null){
		return -1;
	}

	for( i=0; i<sStr1.length; i++ ){
		if(sStr2.indexOf(sStr1.charAt(i))==-1){
			return 0;
		}
	}
	return 1;
}
//---------------------------------------------------------------------
//関  数：gJ_IsLeapYear
//機  能：閏年かどうかを返す
//引  数：(i) sStr （チェックする文字列）
//復帰値： 1(閏年である）
//         0(閏年でない）
//        -1(異常終了）
//作成日：1998/12/9 
//更新日：
//---------------------------------------------------------------------
function gJ_IsLeapYear(sYear){
	var lRet;
	if(gJ_IsNaturalNum(sYear)!=1)
	{
		 return -1;
	}
	if(sYear%400 == 0)	
	{
		lRet = 1;
	}
	else if(sYear%100 == 0)
	{
		lRet = 0;
	}
	else if(sYear%4 == 0)
	{
		lRet = 1;
	}
	else
	{
		lRet = 0;
	}
	return lRet;
}
//---------------------------------------------------------------------
//関  数：gJ_IsDate
//機  能：下記形式の日付データとして妥当であるかを返す
//         yyyy/mm/dd
//         yyyy/m/d
//         (100年〜9999年)
//引  数：(i) sStr （チェックする文字列）
//復帰値： 1(妥当である）
//         0(妥当でない）
//        -1(異常終了)
//作成日：1998/12/9 
//更新日：
//---------------------------------------------------------------------
function gJ_IsDate( sStr )
{
	var sYear="";
	var sMonth="";
	var sDate="";
	var lPos;

	if(sStr==null){
		return 0;
	}

	//年データの取得
	lPos = sStr.indexOf("/");
	if(lPos <= 0 )			//書式不当
	{
		return 0;
	}
	sYear = sStr.substring(0,lPos);
	if(lPos == 2)
	{
		if(sYear < 50)
			sYear = "20"+sYear;
		else
			sYear = "19"+sYear;
	}
	sStr = sStr.substring(lPos+1);
	//月･日データの取得
	lPos = sStr.indexOf("/");
	if(lPos <= 0 )			//書式不当
	{
		return 0;
	}
	sMonth = sStr.substring(0,lPos);
	sDay = sStr.substring(lPos+1);

	if(sYear=="" || gJ_IsAllNum(sYear)!=1)
	{
		return 0;		//数値でない
	}
	if(sMonth=="" || gJ_IsAllNum(sMonth)!=1)
	{
		return 0;		//数値でない
	}
	if(sDay=="" || gJ_IsAllNum(sDay)!=1)
	{
		return 0;		//数値でない
	}

	if(sYear.length > 4)		//不当な0の付加チェック(範囲チェックではチェックできない）
	{
		return 0;
	}
	if(sMonth.length > 2)		//不当な0の付加チェック
	{
		return 0;
	}
	if(sDay.length > 2)		//不当な0の付加チェック
	{
		return 0;
	}

//	if(sYear<100 || sYear>9999)	//年範囲チェック
	if(sYear>9999)	//年範囲チェック
	{
		return 0;
	}

	//月・日範囲チェック
	if(sMonth.charAt(0) == "0")
	{
		sMonth = sMonth.charAt(1);
	}
	if(sMonth=="" || gJ_IsAllNum(sMonth)!=1)
	{
		return 0;		//月データ異常
	}
	if (sMonth=="1" || sMonth=="3" || sMonth=="5" || sMonth=="7" || sMonth=="8" || sMonth=="10"|| sMonth=="12")
	{
			if(sDay <= 31 && sDay >= 1)
				return 1;	
			else
				return 0;		//日データ異常
	}
	if (sMonth=="4" || sMonth=="6" || sMonth=="9" || sMonth=="11" )
	{
			if(sDay <= 30 && sDay >= 1)
				return 1;	
			else
				return 0;		//日データ異常
	}
	if (sMonth=="2" )
	{
			if(gJ_IsLeapYear(sYear)==1)	//閏年の場合
			{
				if(sDay <= 29 && sDay >= 1)
					return 1;	
				else
					return 0;		//日データ異常
			}
			else			//閏年以外
			{
				if(sDay <= 28 && sDay >= 1)
					return 1;	
				else
					return 0;		//日データ異常
			}
	}

	return 0;	//月データ異常
}
/* ****************************************************************************
[関数名] gJ_SubWindowOpener_Exp
[概要]
ミニカレンダーを呼び出すJavascript（ウィンドウオープン使用）

[引数]
inType：呼び出すウィンドウの種類
	[MiniCalendar]：カレンダー
	[ColorSearch]：カラー選択サブウィンドウ
thisobjval：呼び出し元のValue値
inFormName：カレンダーより値をセットするオブジェクト名
inPath：最上位パス

[返り値]:---
      名称変更　+　フラグ追加でカラー選択ウィンドウにも適用
=============================================================================*/
function gJ_SubWindowOpener_Exp(inType,thisobjval,inFormName,inPath)
{
	var lstwin;
	var urlstr1='';
	var urlstr2='';
	
	urlstr1 = '?DD=' + thisobjval;
	urlstr1 = urlstr1 + '&TG=' + inFormName;
	
	if( inType == 'ColorSearch' )
	{
		urlstr2 = gJ_HrefUrlEXchange(inPath + 'Function/SubTool/ColorSearch.asp',urlstr1,1);
		lstwin = window.open(urlstr2,'subColorS','toolbar=no,resizable=yes,directories=no,menubar=no,scrollbars=yes,width=300,height=400');
	} else	{
		urlstr2 = gJ_HrefUrlEXchange(inPath + 'Function/SubTool/MiniCalendar.asp',urlstr1,1);
		lstwin = window.open(urlstr2,'subcalen','toolbar=no,resizable=yes,directories=no,menubar=no,scrollbars=no,width=160,height=200');
	}
	
}
/* ****************************************************************************
[関数名] gJ_SubWindowOpener
[概要]
サブウィンドウを呼び出す統合関数

[引数]
inType：呼び出すウィンドウパターン
「ADR」  gJ_AddrList			アドレス帳
「SIG」  gJ_SignatureMainte	シグネチャ
「SE」	 gJ_SelList			確認者・承認者を選択
「GROUP」gJ_GroupList		グループ
「BU」	部署リスト

「SSET_KEEP」	セッションセットサブウィンドウ「選択時自動サブウィンドウクローズセッション」
「SSET_DOWN」	セッションセットサブウィンドウ「下位ユーザ表示フラグ」

「MEMBER_PIC」	顔写真の表示
「MEMBER_PIC_IKISAKI」	顔写真の表示（行先表示範囲を適用する）

「MAINTE_PRJ」	プロジェクトメンテナンスサブウィンドウ
「MAINTE_POP」	ポップアップ通知
「MAINTE_MEMBER_PIC」	顔写真登録

「Help」ヘルプウィンドウ

inPath：最上位パス
inParam：汎用引数

[返り値]:---
=============================================================================*/
function gJ_SubWindowOpener(inType,inPath,inParam)
{
	var lstwin;
	var targetwin='';
	var targetwinplus='';
	var urlstr='';
	var targetName='';
	var winsize='';
	
	
	if( inType == 'ADDR' )	{
		targetwin = 'Function/SubTool/ADDRESS/LIST.asp';
		if (inParam == 'R')
		{
			targetwinplus = '?KINOU=return' ;
		}
		targetName = 'ADDRList';
		winsize	= 'width=600,height=260';
	} else if( inType == 'SIG' ) {
		targetwin = 'Function/SubTool/Signature/Signature.asp';
		targetName = 'Signature';
		winsize	= 'width=600,height=260';
	} else if( inType == 'SE' ) {
		targetwin = 'Function/SubTool/IDList/IDLIST.asp';
		if (inParam != '')
		{
			targetwinplus = inParam ;
		}
		targetName = 'seList';
		winsize	= 'width=350,height=350';
	} else if( inType == 'GROUP' ) {
		targetwin = 'Function/SubTool/GroupList/grp_List.asp';
		targetName = 'groupList';
		winsize	= 'width=500,height=450';
	} else if( inType == 'BULIST' ) {
		targetwin = 'Function/SubTool/BuList/List.asp';
		if( inParam == '' ){
			alert('gJ_SubWindowOpenerへの引数が間違っています。（部署リスト）');
			return
		}
		targetwinplus = '?SF=' + inParam;
		targetName = 'BUList';
		winsize	= 'width=300,height=500';
		
	} else if( inType == 'SSET_DOWN' ) {
		targetwin = 'Function/SubTool/checkedkeep.asp';
		targetwinplus = '?SF=DOWN';
		if( inParam.checked == true ) {
			targetwinplus = targetwinplus + '&FG=1';
		} else {
			targetwinplus = targetwinplus + '&FG=0';
		}
		targetName = 'SSET';
		winsize	= 'width=1,height=1';
	} else if( inType == 'SSET_KEEP' ) {
		targetwin = 'Function/SubTool/checkedkeep.asp';
		targetwinplus = '?SF=KEEP';
		if( inParam.checked == true ) {
			targetwinplus = targetwinplus + '&FG=1';
		} else {
			targetwinplus = targetwinplus + '&FG=0';
		}
		targetName = 'SSET';
		winsize	= 'width=1,height=1';


	} else if( inType == 'MEMBER_PIC' || inType == 'MEMBER_PIC_IKISAKI' ) {
		targetwin = 'Function/SubTool/MemberPic.asp';
		targetwinplus = '?SI=' + inParam;
		targetwinplus = targetwinplus + '&TP=' + inType;
		targetName = 'MEMBER_PIC';
		winsize	= 'width=500,height=300';


	} else if( inType == 'MAINTE_POP' ) {
		targetwin = 'MAINTE/popup/popup.asp';
		if (inParam != '')
		{
			targetwinplus = '?SEID=' + inParam ;
		}
		targetName = 'PopList';
		winsize	= 'width=620,height=450';

	} else if( inType == 'MAINTE_MEMBER_PIC' ) {
		targetwin = 'Function/SubTool/MemberPic/Add.asp';
		if (inParam != '')
		{
			targetwinplus = '?SEID=' + inParam ;
		}
		targetName = 'MemberPicAdd';
		winsize	= 'width=500,height=260';

	} else if( inType == 'Help' ) {
		targetwin = 'doc/wss_contents.asp';
		if (inParam != '')
		{
			targetwinplus = '?Kinou=' + inParam ;
		}
		targetName = 'Help';
		winsize	= 'width=400,height=450';

	} else {
		alert('gJ_SubWindowOpenerへの引数が間違っています。');
		return
	}
	
	urlstr = inPath;
	urlstr = urlstr + gJ_HrefUrlEXchange(targetwin,targetwinplus,1);
	
	//lstwin = window.open(urlstr,targetName);
	lstwin = window.open(urlstr,targetName,'toolbar=no,resizable=yes,directories=no,menubar=no,scrollbars=yes,' + winsize);
}
