var month_of_year = new Array('January','February','March','April','May','June','July','August','September','October','November','December');
var TD_date_start = 	'<td>';var TD_day_start = 	'<td>';var TD_end = 		'</a></td>';var TD_empty_end = 	'</td>';var TD_empty_start = 	'<td>';var TD_selected_start = '<td>';var TD_today_start = 	'<td>';var TD_weekend_start = 	'<td bgcolor="#d6f6e5">';var TR_start = 		'<tr>';var TR_end = 		'</tr>';
function showCalendarMonth(showMonth, showYear, selectedDate, target) {	var day_of_week = new Array('Sun','Mon','Tue','Wed','Thu','Fri','Sat');var i = 0;var Now = new Date();	var Calendar = new Date();var selectedYear = selectedDate.substring(0,4);var selectedMonth = selectedDate.substring(5,7) - 1;var selectedDay = selectedDate.substring(8,10);var year = showYear;	 	var month = showMonth - 1;   var today = Calendar.getDate(); var weekday = Calendar.getDay(); var DAYS_OF_WEEK = 7;var DAYS_OF_MONTH = 31;	var cal;Calendar.setDate(1);Calendar.setMonth(month);Calendar.setYear(year);	cal = '<table align="center" border="0" cellspacing="1" cellpadding="2" border="0" class="cal_table">' + TR_start;	cal += '<td colspan="' + DAYS_OF_WEEK + '" bgcolor="#c8c8e8" class="cal_title">';	cal += month_of_year[month]  + '   ' + year + TD_end + TR_end;	cal += TR_start;	for (i = 0; i < DAYS_OF_WEEK; i++) {cal += TD_day_start + day_of_week[i] + TD_end;}	cal += TR_end;	if (Calendar.getDay() != 0) {cal += TR_start;}	for (i = 0; i < Calendar.getDay(); i++) {cal += TD_empty_start + '&nbsp;' + TD_empty_end;}	var days_shown = Calendar.getDay();	for (i = 0; i < DAYS_OF_MONTH; i++) {		if (Calendar.getDate() > i) {			week_day = Calendar.getDay();			if (week_day == 0) {cal += TR_start;}			if (week_day != DAYS_OF_WEEK) {				var day	= Calendar.getDate();				if (Calendar.getDate() == selectedDay && month == selectedMonth && year == selectedYear) {cal += TD_selected_start + '<a href="javascript:pickDate(' + year + ', ' + zero(month+1,2) + ', ' + zero(day,2) + ', \'' + target + '\');">' + day + '</a>' + TD_end;				}else if (today == Calendar.getDate() && month == Now.getMonth() && year == Now.getFullYear()) {cal += TD_today_start + '<a href="javascript:pickDate(' + year + ', ' + zero(month+1,2) + ', ' + zero(day,2) + ', \'' + target + '\');">' + day + '</a>' + TD_end;				}else if (Calendar.getDay() == 0 || Calendar.getDay() == 6) {cal += TD_weekend_start + '<a href="javascript:pickDate(' + year + ', ' + zero(month+1,2) + ', ' + zero(day,2) + ', \'' + target + '\');">' + day + '</a>' + TD_end;				}else {cal += TD_date_start + '<a href="javascript:pickDate(' + year + ', ' + zero(month+1,2) + ', ' + zero(day,2) + ', \'' + target + '\');">' + day + '</a>' + TD_end;				}			}			if (week_day == DAYS_OF_WEEK) {cal += TR_end;}			days_shown++;		}		Calendar.setDate(Calendar.getDate()+1);	}	var extra = 7 - (days_shown % 7);for (i = 0; i < extra && extra != 7; i++) {cal += TD_empty_start + '&nbsp;' + TD_empty_end;}cal += '</tr></table>';return cal;}
function showMonths(howMany, startMonth, startYear, selectedDate, target, path_icon) {	var i = 0;var Now = new Date();	var previousMonth = 0;var previousYear = 0;var nextMonth = 0;var nextYear = 0;var content = "";	startMonth = parseInt(startMonth);	startYear = parseInt(startYear);	if (startMonth - 3 < 0) {previousMonth = 12 + startMonth - 1;previousYear = startYear - 1;}else {previousMonth = startMonth - 1;previousYear = startYear;}	if (startMonth + 1 > 11) {nextMonth = startMonth + 1 - 12;nextYear = startYear + 1;}else {nextMonth = startMonth + 1;nextYear = startYear;}	content += '<table width="100%" border="0" cellspacing="0" cellpadding="0" border="0"><tr><td class="cal_arrows">';	content += '<a href="javascript:showMonths(' + howMany + ', ' + previousMonth + ', ' + previousYear + ', \'' + selectedDate + '\', \'' + target + '\',\'' + path_icon +'\');"><img src="'+ path_icon +'previous.gif" height=15 border=0></a>';	content += '</td><td class="cal_arrows" align="right">';	content += '<a href="javascript:showMonths(' + howMany + ', ' + nextMonth + ', ' + nextYear + ', \'' + selectedDate + '\', \'' + target + '\',\'' + path_icon +'\');"><img src="'+ path_icon +'next.gif" height=15 border=0></a>';	content += '</td></tr></table>';	for (i = 0; i < howMany; i++) {content += '<p>';content += showCalendarMonth(startMonth, startYear, selectedDate, target);content += '</p>';if (startMonth < 12) {startMonth++;}else {startMonth = 1;startYear++;}}	content += '<p align="center">';	content += '<select id="jump_month">';	for (i = 0; i < 12; i++) {content += '<option value="' + (i + 1) + '">' + month_of_year[i] + '</option>';}	content += '</select> ';content += '<input type="text" size="4" name="jump_year" id="jump_year" value="' + startYear + '"> ';	content += '<input class="button" type="button" name="jump" value=" Go " onclick="showMonths(' + howMany + ', document.getElementById(\'jump_month\').options[document.getElementById(\'jump_month\').selectedIndex].value, document.getElementById(\'jump_year\').value, \'' + selectedDate + '\', \'' + target + '\',\'' + path_icon +'\');"> ';	content += '&nbsp; <input class="button" type="button" name="jump_today" value="Today" onclick="showMonths(' + howMany + ', ' + (Now.getMonth() + 1) + ', ' + Now.getFullYear() + ', \'' + selectedDate + '\', \'' + target + '\',\'' + path_icon +'\');">';	content += '</p>';content += '<p align="center">';content += '</p>';content += '<p align="center">';	content += '<table width="100%" border="0" cellspacing="0" cellpadding="0" border="0"><tr><td class="cal_arrows">';	content += '<a href="javascript:showMonths(' + howMany + ', ' + previousMonth + ', ' + previousYear + ', \'' + selectedDate + '\', \'' + target + '\',\'' + path_icon +'\');"><img src="'+ path_icon +'previous.gif" height=15 border=0></a>';	content += '</td><td class="cal_arrows" align="right">';	content += '<a href="javascript:showMonths(' + howMany + ', ' + nextMonth + ', ' + nextYear + ', \'' + selectedDate + '\', \'' + target + '\',\'' + path_icon +'\');"><img src="'+ path_icon +'next.gif" height=15 border=0></a>';	content += '</td></tr></table>';content += '</p>';document.getElementById('cal').innerHTML = content;}