// JavaScript Document

function JS_ShowDateBox(obj,tag,ref,curr,vpos,hpos,absol){ 
//first create div to hold date box
	var box='divDateBox';
	JS_CreatePopUp(box)
	var JS="JS_ShowHideScreen('"+box+"','hide');";
	var target=document.getElementById(box);
	target.innerHTML='<table width="150" border="0" cellspacing="0" cellpadding="0"><tr><td height="20" align="right"><a href="javascript:void(0);" onclick="'+JS+'"><img height="12" border="none" src="/cos/images/btn_close.gif" /></a></td></tr><tr valign="top"><td style="padding:5px;" height="135" id="divDateSel"></td></tr></table>'
	target.style.position='fixed';
	if(absol) target.style.position='absolute';
	target.style.display='block';
	JS_PositionDiv(obj,target,vpos,hpos,absol)

var url="/cos/tools/x_datesel.php?a=1";
	if(tag) url+="&gvDTag="+tag;
	if(ref) url+="&gvRef="+ref;
	if(curr){ 
		var Data=new Array();
		Data=curr.split('-');
		url+="&gvYr="+Data[0];
		url+="&gvMo="+Data[1];
		url+="&gvDa="+Data[2];
	}
	var type='datebox_data'
	JS_GetDocData(url,type,tag,curr);
}

function JS_ReceiveDateBox(docdoc,tag,curr){
	document.getElementById('divDateSel').innerHTML=docdoc.responseText;
	if(curr){
		var Data=new Array();
		Data=curr.split('-');
		JS_FillCal(Data[0],Data[1],Data[2],tag);
	}
	else JS_LoadCal(tag);
}

function JS_LoadCal(tag) {
	var date_today=new Date();
	var mo_t=date_today.getMonth()+1;
	var yr_t=date_today.getYear(); if(yr_t<1000) yr_t+=1900;
	var da_t=date_today.getDate();
	var start_date=new Date(mo_t+"/1/"+yr_t);
	var last_date=new Date((mo_t+1)+"/0/"+yr_t).getDate();
	var start_day=start_date.getDay();
//----------------------------------------------------
// Clear calendar
	for(var x=0;x<7;x++) {
	for(var y=0;y<6;y++) {
		document.getElementById(tag+'_'+'w'+y+'d'+x).innerHTML='&nbsp;';
		document.getElementById(tag+'_'+'w'+y+'d'+x).className="cell_xs_brd";
	}}
	
//----------------------------------------------------
// Fill calendar
	var w=0;
	for(var d=1;d<=last_date;d++) {
	wd=d+start_day-1;
	w=Math.floor(wd/7,0);
	i=wd-w*7;
		document.getElementById(tag+'_'+'w'+w+'d'+i).innerHTML=d;
		document.getElementById(tag+'_'+'w'+w+'d'+i).className="cell_copper_xs_brd";
		if(da_t==d) document.getElementById(tag+'_'+'w'+w+'d'+i).className="cell_silver_xs_brd";
	}

//---------------------------------------------------------------------------------
// Set Year and month information	
	document.getElementById(tag+'_'+'locYear').innerHTML=yr_t;
	for(var i=1;i<5;i++) {
		document.getElementById(tag+'_'+'ym'+i).innerHTML=String(yr_t-i).substr(2,2);
		document.getElementById(tag+'_'+'yp'+i).innerHTML=String(yr_t+i).substr(2,2);
	}
	document.getElementById(tag+'_'+'locMonth').innerHTML=JS_RetMonth(mo_t);
}


function JS_GoMonth(mo,tag) {
	yr=document.getElementById(tag+'_'+'locYear').innerHTML;
	document.getElementById(tag+'_'+'locMonth').innerHTML=JS_RetMonth(mo)
	JS_FillCal(yr,mo,'',tag);
}

function JS_GoYear(offset,tag) {
	var yr=Number(document.getElementById(tag+'_'+'locYear').innerHTML)+offset;
	var my_date=new Date(document.getElementById(tag+'_'+'locMonth').innerHTML+" 1,"+yr);
	var mo=my_date.getMonth()+1;
	document.getElementById(tag+'_'+'locYear').innerHTML=yr;
	for(var i=1;i<5;i++) {
		document.getElementById(tag+'_'+'ym'+i).innerHTML=String(yr-i).substr(2,2);
		document.getElementById(tag+'_'+'yp'+i).innerHTML=String(yr+i).substr(2,2);
	}
	JS_FillCal(yr,mo,'',tag);
}

function JS_SelDate(da,tag,ref) {
	if(da) {
		var yr=Number(document.getElementById(tag+'_'+'locYear').innerHTML);
		var my_date=new Date(document.getElementById(tag+'_'+'locMonth').innerHTML+" 1,"+yr);
		var mo=my_date.getMonth()+1;
		JS_FillCal(yr,mo,da,tag);
		JS_GetDate(da,mo,yr,tag,ref)
	}
}

function JS_FillCal(yr,mo,sel,tag) {
	mo=Number(mo); sel=Number(sel); yr=Number(yr);
	
	var my_date=new Date(mo+"/1/"+yr);
	var last_date=new Date((mo+1)+"/0/"+yr).getDate();
	var start_day=my_date.getDay();

	var date_today=new Date();
	mo_t=date_today.getMonth()+1;
	yr_t=date_today.getYear(); if(yr_t<1000) yr_t+=1900;
	da_t=date_today.getDate();

//----------------------------------------------------
// Clear calendar
	for(var x=0;x<7;x++) {
	for(var y=0;y<6;y++) {
		document.getElementById(tag+'_'+'w'+y+'d'+x).innerHTML='&nbsp;';
		document.getElementById(tag+'_'+'w'+y+'d'+x).className="cell_xs_brd";
	}}
	
//----------------------------------------------------
// Fill calendar
	var w=0;
	for(var d=1;d<=last_date;d++) {
	wd=d+start_day-1;
	w=Math.floor(wd/7,0);
	i=wd-w*7;
		document.getElementById(tag+'_'+'w'+w+'d'+i).innerHTML=d;
		document.getElementById(tag+'_'+'w'+w+'d'+i).className="cell_copper_xs_brd";
		if(yr_t==yr && mo_t==mo && da_t==d) document.getElementById(tag+'_'+'w'+w+'d'+i).className="cell_silver_xs_brd";
		if(sel==d) document.getElementById(tag+'_'+'w'+w+'d'+i).className="cell_yellow_xs_brd";
	}
	
//---------------------------------------------------------------------------------
// Set Year and month information	
	document.getElementById(tag+'_'+'locYear').innerHTML=yr;
	for(var i=1;i<5;i++) {
		document.getElementById(tag+'_'+'ym'+i).innerHTML=String(yr-i).substr(2,2);
		document.getElementById(tag+'_'+'yp'+i).innerHTML=String(yr+i).substr(2,2);
	}
	document.getElementById(tag+'_'+'locMonth').innerHTML=JS_RetMonth(mo);

}

function JS_GetDate(da,mo,yr,tag,ref) {
	var savedate=yr+'-'+mo+'-'+da
	if(tag=='event_list') {
		if (ref=='A') JS_GetEventList(0,'',savedate,'');
		if (ref=='B') JS_GetEventList(0,'','',savedate);
		document.getElementById('divDateBox').style.display='none';
	}
	if(tag=='search_date') {
		if (ref=='A') JS_GetResultsData(0,'','','',savedate,'');
		if (ref=='B') JS_GetResultsData(0,'','','','',savedate);
		document.getElementById('divDateBox').style.display='none';
	}
	if(tag=='today_date') {
		JS_GetEventToday(0,savedate);
		document.getElementById('divDateBox').style.display='none';
	}
	if(tag=='review_date') {
		document.getElementById('divDateBox').style.display='none';
		JS_BaseEdit(tag,savedate,'review',ref)
	}
	if(tag=='event_date' || tag=='event_repeatdate') {
		document.getElementById('divDateBox').style.display='none';
		JS_BaseEdit(tag,savedate,'event',ref)
	}
}


