//===========================================================================
//	関数名　：referObject
//	関数概要：オブジェクトのIDからオブジェクトを探し、オブジェクトとして返す
// -------------------------------------------------------------------------
//	引数	：objName	- オブジェクトのName（文字列
//	戻り値	：オブジェクト or False  ※引数省略不可
//===========================================================================
function referObject(objName)
{
	// N6,Moz,IE5,IE6用
//	if (document.getElementById)
	if (document.getElementsByName)
	{		
		if (document.getElementsByName(objName))
		{
			var obj = document.getElementsByName(objName);
			if( obj.length > 1 )
			{
				return obj;
			} else {
				return obj[0];
			}
			
			return document.getElementsByName(objName)
		}
	}
	else if (document.all)
	{
		// N4用
		if (document.all(objName))
		{
			return document.all(objName);
		}
	}
	return false;
}


//===========================================================================
//	関数名　：displayChange
//	関数概要：オブジェクトの表示・非表示の切り替え
// -------------------------------------------------------------------------
//  引数　　：objID - 切り替えたいオブジェクトのID
//			　disp  - 表示モード true-使用可　false-使用不可
//	戻り値	：なし
//===========================================================================
function displayChange(objID, disp)
{
	var object = referObject(objID);
	
	var mode   = (disp) ? "inline" : "none";
	object.style.display = mode;
	
	// 表示設定
	var saveObj = "disp_"+objID;
	if( referObject(saveObj) )
	{
		object = referObject(saveObj);
		object.value = mode;
	}
	
//	object.filters["alpha"].opacity = 40;
}


//===========================================================================
//	関数名　：displaySwitch
//	関数概要：オブジェクトの表示・非表示の切り替え
//            正し displayChange と違い
//            表示・非表示を引数で制御する事はできず
//            オブジェクトが表示中なら起動時 に非表示にし
//            オブジェクトが非表示中なら起動時に表示にする
// -------------------------------------------------------------------------
//  引数　　：objID - 切り替えたいオブジェクトのID
//	戻り値	：表示モード（none：inline）
//===========================================================================
function displaySwitch(objID)
{
	var object = referObject(objID);
	var mode   = (object.style.display=="none") ? "inline" : "none";
	object.style.display = mode;

	// 表示設定
	var saveObj = "disp_"+objID;
	if( referObject(saveObj) )
	{
		object = referObject(saveObj);
		object.value = mode;
	}

	return mode;
}


//===========================================================================
//	関数名　：set_focus
//	関数概要：objName に指定されたオブジェクトにフォーカスをセットする
// -------------------------------------------------------------------------
//	引数	：objName	-> オブジェクトの名前
//	戻り値	：フォーカスセット時：true 未セット時：false
//===========================================================================
function set_focus(objName)
{
	var myObj	= referObject(objName);
	
	// object存在時
	if(myObj)
	{
		myObj.focus();
		return true;
	}
	return false;
}


//===========================================================================
//	関数名　：numOnly
//	関数概要：数値のみを入力可能にする
//			  onkeyDown="return numOnly()" を数値入植したオブジェクトに配置
// -------------------------------------------------------------------------
//	引数	：なし
//	戻り値	：True or False
//===========================================================================
function numOnly()
{
	if(event.keyCode == 9)	return true;		//	TABはOK
	if(event.keyCode == 46)	return true;		//	DELETEはOK
	if(event.keyCode == 190) return true;		//	.はOK
	if(event.keyCode == 110) return true;		//	.はOK
	m = String.fromCharCode(event.keyCode);
	// `abcdefghi はテンキーの文字
	if("0123456789\b\r`abcdefghi".indexOf(m, 0) < 0)
	{
		return false;
	}
	return true;
}


//===========================================================================
//	関数名　：checkCount
//	関数概要：オブジェクトのチェック数を確認する
// -------------------------------------------------------------------------
//	引数	：なし
//	戻り値	：True or False
//===========================================================================
function checkCount(objName)
{
	var myObj	= referObject(objName);
	
	// object存在時
	if(myObj)
	{
		var cnt = 0;

		for(var i=0; i<myObj.length; i++)
		{
			if( myObj[i].checked ) cnt++;
		}
		
		return cnt;
	}
	return false;
}


