
function createCalendar(dow,dom,month,year)
{
//alert (dow+","+dom+","+month+","+year);
	var mth=["","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]
	var dofwk=["","Sun","Mon","Tue","Wed","Thu","Fri","Sat"]
	var nod=["","31","28","31","30","31","30","31","31","30","31","30","31","29"]

	if (dom==1) { 
		offset=dow; 
	} else {
		for (i=dom; i>1; i--) {
			dow--;
			if (dow==0) dow=7;
			if (dow<0) dow=6;
		}
	}	
	prevMthDOW=dow-1;

	var difference="";
	if (dow>0) {
		for (i=1; i<dow; i++) {
			difference +="<td></td>";
		}
	}

	if (month==2 && (year==1992 || year==1996 || year==2000 || year==2004 || year==2008 || year==2012 || year==2016 || year==2020 || year==2024)) {
		daysInMth=nod[13];
	} else {
		daysInMth=nod[month];
	}
	daysInMth++;

	cal=difference;
	for (i=1; i< daysInMth; i++) {
		if ((i == todayDate) && (month == todayMonth) && (year == todayYear)) cal +="<td align='right' class='quoteShade'><b>"+i+"</b></td>";
		else if (dow==1) cal +="<td class='bodyText' align='right'>"+i+"&nbsp;</td>";
		else if (dow==7) cal +="<td class='bodyText' align='right'>&nbsp;"+i+"</td>";
		else cal +="<td align=right>"+i+"</td>";
		if (dow>=7) {
			cal +="</tr><tr bgcolor='#FFFFFF'>";
			dow=0;
		}
		dow++;
	}
	if (dow < 7) {
		for (i=dow; i<=7; i++) {
			cal+="<td></td>";
		}
	}
	cal+="</tr></table>";
	
	nextMthDOW=dow;
	if (nextMthDOW>=8) nextMthDOW=7;

	if (month==1) {
		lastMth=12;
		lastYear=year-1;
	} else {
		lastMth=month-1;
		lastYear=year;
	}

	if (month==12) {
		nextMth=1;
		nextYear=year+1;
	} else {
		nextMth=month+1;
		nextYear=year;
	}	
	
	if (prevMthDOW < 0) prevMthDOW=0;
	
	// reset row
	reset = "<table width='100%' cellpadding='2' cellspacing='0' align='center''>";
	reset += "<tr bgcolor='#FFFFFF'>";
	reset += "<td align='center'><input type='button' class='whiteBodyButton' onclick='initCalendar()' Value='Go to Today' onMouseOver=this.className='whiteBodyButtonOver'; onMouseOut=this.className='whiteBodyButton';></td>";
	reset += "</tr>";
	reset += "</table>";
	
	// Border table
	header = "<table width='100%' cellpadding='6' cellspacing='0' border='0' align='center'>";
	header += "<tr>";
	header += "<td>";
	
	// Main Table
	header += "<table width='100%' cellpadding='0' cellspacing='0' align='center''>";
	header += "<tr>";
	header += "<td class='formBorder'>";
	
	//month title
	header +="<table width='100%' cellpadding='2' cellspacing='0' align='center'>"
	header +="<tr>";
	header +="<td class='pageTitle'><input type='button' class='whiteBodyButton' onclick=\"javascript:setTimeout('createCalendar("+prevMthDOW+","+nod[lastMth]+","+lastMth+","+lastYear+")', 500);\" value='<' onMouseOver=this.className='whiteBodyButtonOver'; onMouseOut=this.className='whiteBodyButton';></td>";
	header +="<td align='center' class='pageTitle'>"+mth[month]+" "+year+"</td>";
	header +="<td align='right' class='pageTitle'><input type='button' class='whiteBodyButton' onclick=\"javascript:setTimeout('createCalendar("+nextMthDOW+",1,"+nextMth+","+nextYear+")', 500);\" value='>' onMouseOver=this.className='whiteBodyButtonOver'; onMouseOut=this.className='whiteBodyButton';></td>";
	header +="</tr>";
	header +="</table>";
	
	// week calendar
	header +="<table width='100%' cellpadding='2' cellspacing='0' align='center'>"
	header +="<tr>";
	header +="<td align=right class='pageSubTitle'>S</td><td align=right class='pageSubTitle'>M</td><td align=right class='pageSubTitle'>T</td><td align=right class='pageSubTitle'>W</td><td align=right class='pageSubTitle'>T</td><td align=right class='pageSubTitle'>F</td><td align=right class='pageSubTitle'>S</td>";
	header +="</tr>"
	
	header +="<tr bgcolor='#FFFFFF'>";
	message = header + cal + reset;
	message += "</td></tr></table>";
	message += "</td></tr></table>";
	name = "Calendar1";
	
	document.getElementById(name).innerHTML=message;
}

function initCalendar() {
	var mydate=new Date();
	var year=mydate.getYear();
	if (year<1000) year+=1900;
	var day=mydate.getDay()+1;
	var month=mydate.getMonth()+1;
	var dom=mydate.getDate();
	todayDate = mydate.getDate();
	todayMonth = mydate.getMonth()+1;
	todayYear = mydate.getYear();
	createCalendar(day,dom,month,year);
}

function setCalendar(thisDOW,thisdate,thismonth,thisyear)
{
todayDate = thisdate;
todayMonth = thismonth;
todayYear = thisyear;
createCalendar(thisDOW,todayDate,todayMonth,todayYear);
}

var todayDate;
var todayMonth;
var todayYear;
