var calMonths = ['January','February','March','April','May','June','July','August','September','October','November','December'];
var calWeek = ['Su','Mo','Tu','We','Th','Fr','Sa'];
var calMonthDays = [31,28,31,30,31,30,31,31,30,31,30,31];

var date1 = new Date();
var curYear = date1.getFullYear();
var curMonth = date1.getMonth();
var curDate = date1.getDate();
/*
var yearBegin = 1935;
var yearEnd = 2075;
*/
var yearBegin = curYear - 70;
var yearEnd = curYear + 70;

document.write ('<div id="div_my_calendar" class="cl_div_calendar"></div>');

function sendDate(sendyear, sendmonth, senddate, dateField)
{
	var cell = MM_findObj(dateField);
	cell.value = (sendmonth+1)+'/'+senddate+'/'+sendyear;

	var cell = MM_findObj('div_my_calendar');
	cell.style.display = 'none';
}

function drawCalendar(month, year, dateField)
{
	var numDate = new Date(year, month, 1);
	var firstDayInWeek = numDate.getDay();
	var numDaysInMonth = calMonthDays[month] + (((month == 1) && (!(year % 4))) ? 1 : 0); //for February
	//document.write ('year = <b>'+year+'</b> |  month = <b>'+month+'</b> | numDaysInMonth = <b>'+numDaysInMonth+'</b> | firstDayInWeek = <b>'+firstDayInWeek+'</b>');

	var out='';
	out+='<table cellpadding="2" cellspacing="0" border="0" width="150" class="cl_calendar_tbl">';
	out+='<tr class="cl_td_idea_options_header">';
	out+='	<td><b>Calendar</b></td>';
	out+='	<td class="cl_right"><a href="javascript:div_hide(\'div_my_calendar\');"><img src="images/close.gif" alt="" width="10" height="10" border="0"></a></td>';
	out+='</tr>';
	out+='<tr>';
	out+='	<td>';
	out+='		<select name="select_mon" onChange="drawCalendar(this.value, '+year+', \''+dateField+'\');" class="cl_idea_options_items">';
					for (i=0; i<12; i++)
						{
						out+='<option value="'+i+'"';
						if (i == month) out+=' selected';
						out+='>'+calMonths[i];
						}
	out+='			</select>';
	out+='		</td>';
	out+='	<td>';
	out+='		<select name="select_year" onChange="drawCalendar('+month+', this.value, \''+dateField+'\');" class="cl_idea_options_items">';
					for (i=yearBegin; i<=yearEnd; i++)
						{
						out+='<option value="'+i+'"';
						if (i == year) out+=' selected';
						out+='>'+i;
						}
	out+='			</select>';
	out+='		</td>';
	out+='</tr>';
	out+='<tr>';
	out+='	<td colspan="2">';
	out+='	<table cellpadding="0" cellspacing="0" width="100%" border="0">';
	out+='	<tr class="cl_td_idea_options_header">';
			for(i=0; i<7; i++) out+='<td align="center">'+calWeek[i]+'</td>';
	out+='	</tr>';
	out+='	<tr>';
			for (i=0; i<firstDayInWeek; i++) out+='<td></td>';
			var current = 1;
			var week = i;
			while (current<=numDaysInMonth)
				{
				if (current == curDate) {out+='<td align="center" class="cl_font_small"><a href="javascript:sendDate('+year+', '+month+', '+current+', \''+dateField+'\');" class="cl_day"><b>'+current+'</b></a></td>';}
				else {out+='<td align="center"><a href="javascript:sendDate('+year+', '+month+', '+current+', \''+dateField+'\');" class="cl_day">'+current+'</a></td>';}
				current++;
				week++;
				if (week == 7)
					{
					out+='</tr><tr>';
					week = 0;
					}
				}
	out+='	</tr>';
	out+='	</table>';
	out+='	</td>';
	out+='</tr>';
	out+='</table>';
	var cell = MM_findObj('div_my_calendar');
	cell.innerHTML = out;
}

function calGetDate (dateSrc, dateField, posAlignX, posAlignY)
{
	if (!posAlignX) posAlignX = 0;
	if (!posAlignY) posAlignY = 3;

	var month = curMonth;
	var year = curYear;

	detect_position (dateSrc, 'div_my_calendar', posAlignX, posAlignY);
	drawCalendar(month, year, dateField);

	var cell = MM_findObj('div_my_calendar');
	cell.style.display = 'block';
}