// 変数定義
var dwState = false;
var calObjList = new Array();
var strObjList = new Array();

/*
* func:_createCal
* param:div id名、form id名、関数名
* description:カレンダーの生成
*/
function _createCal(obj,frm,func)
{
	targetObj = document.getElementById(obj);
	targetFrm = document.getElementById(frm);
	
	if(targetObj && targetFrm){
		targetObj.style.display  = 'none';
		targetObj.style.zIndex   = 100;
		targetObj.style.position = 'absolute';
		targetObj.onmousedown    = checkDownState;
		targetFrm.style.zIndex   = -200;

		var calObj = new YAHOO.widget.Calendar("calObj",obj); 
		calObj.cfg.setProperty("MONTHS_SHORT", ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"]); 
		calObj.cfg.setProperty("MONTHS_LONG", ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"]); 
		calObj.cfg.setProperty("WEEKDAYS_1CHAR", ["日", "月", "火", "水", "木", "金", "土"]); 
		calObj.cfg.setProperty("WEEKDAYS_SHORT", ["日", "月", "火", "水", "木", "金", "土"]); 
		calObj.cfg.setProperty("WEEKDAYS_MEDIUM",["日", "月", "火", "水", "木", "金", "土"]); 
		calObj.cfg.setProperty("WEEKDAYS_LONG", ["日曜日", "月曜日", "火曜日", "水曜日", "木曜日", "金曜日", "土曜日"]); 
		calObj.cfg.setProperty("MY_YEAR_POSITION", 1);
		calObj.cfg.setProperty("MY_MONTH_POSITION", 2);
		calObj.cfg.setProperty("MDY_YEAR_POSITION", 1);
		calObj.cfg.setProperty("MDY_MONTH_POSITION", 2);
		calObj.cfg.setProperty("MDY_DAY_POSITION", 3);

		calObj.selectEvent.subscribe(func, calObj, true);
		calObj.render();
	}
}

// カレンダーから日付を選んだときのイベントハンドラー
function checkDate(type,args,obj)
{
	var d = args.toString().split(",");
	YAHOO.util.Dom.get(strObjList[0]).value = d[0]+"-"+d[1]+"-"+d[2];
	document.getElementById(calObjList[0]).style.display = "none";
}

function checkDate2(type,args,obj)
{
	var d = args.toString().split(",");
	YAHOO.util.Dom.get(strObjList[1]).value = d[0]+"-"+d[1]+"-"+d[2];
	document.getElementById(calObjList[1]).style.display = "none";
}

function checkDate3(type,args,obj)
{
	var d = args.toString().split(",");
	YAHOO.util.Dom.get(strObjList[2]).value = d[0]+"-"+d[1]+"-"+d[2];
	document.getElementById(calObjList[2]).style.display = "none";
}
function checkDateByIndex(type,args,obj,index)
{
	var d = args.toString().split(",");
	YAHOO.util.Dom.get(strObjList[index]).value = d[0]+"-"+d[1]+"-"+d[2];
	document.getElementById(calObjList[index]).style.display = "none";
}
function checkDateTimeByIndex(type,args,obj,index,time)
{
	var d = args.toString().split(",");
	YAHOO.util.Dom.get(strObjList[index]).value = d[0]+"-"+d[1]+"-"+d[2]+" "+time;
	document.getElementById(calObjList[index]).style.display = "none";
}

function checkDate4(type,args,obj)
{
	var d = args.toString().split(",");
	YAHOO.util.Dom.get(strObjList[3]).value = d[0]+"-"+d[1]+"-"+d[2];
	document.getElementById(calObjList[3]).style.display = "none";
}

// カレンダーを表示
function onCalDisplayHandler(obj)
{
	document.getElementById(obj).style.display = "block";
	document.onmousedown = onCalCloseHandler;
}

// カレンダーを非表示
function onCalCloseHandler()
{
	for(var i = 0; i<calObjList.length; i++)
	{
		if(!dwState)
		{
			obj = document.getElementById(calObjList[i]);
			if(obj && obj.style.display == "block")
			{
				obj.style.display = "none";
			}
		}
	}
	dwState = false;
}

// マウスダウンの動きチェック
function checkDownState()
{
	dwState = true;
}

