// Source http://www.dynamicdrive.com/dynamicindex7/basiccalendar.htm
function buildCal(m, y, cM, cH, cDW, cD, brdr)
{
	var mn=['January','February','March','April','May','June','July','August','September','October','November','December'];
	var dim=[31,0,31,30,31,30,31,31,30,31,30,31];
	
	var oD = new Date(y, m-1, 1); 
	oD.od=oD.getDay()+1; 
	
	var todaydate=new Date() 
	var scanfortoday=(y==todaydate.getFullYear() && m==todaydate.getMonth()+1)? todaydate.getDate() : 0 
	
	dim[1]=(((oD.getFullYear()%100!=0)&&(oD.getFullYear()%4==0))||(oD.getFullYear()%400==0))?29:28;
	
	var t='<div class="'+cM+'"><table class="'+cM+'" cols="7" width="100%">';
	t+='<tr align="center">';
	
	for(s=0;s<7;s++)t+='<td class="'+cDW+'">'+"SMTWTFS".substr(s,1)+'</td>';
	
	t+='</tr><tr align="center">';
	
	var thisLastVisibleCell = 0;
	for(i=1;i<=42;i++)
	{
		var x=((i-oD.od>=0)&&(i-oD.od<dim[m-1]))? i-oD.od+1 : '&nbsp;';
		if (x==scanfortoday)
		{
			var thisTDClass = "today";
			thisLastVisibleCell = i;
		}
		else if (x == '&nbsp;')
		{
			var thisTDClass = "empty";
			
			if (thisLastVisibleCell < 36 && i >= 36)
				var thisTDClass = "hidden";
		}
		else
		{
			var thisTDClass = cD;
			thisLastVisibleCell = i;
		}
			
		t+='<td class="'+thisTDClass+'">'+x+'</td>';
		if(((i)%7==0)&&(i<36))t+='</tr><tr align="center">';
	}
	
	return t+='</tr></table></div>';
}

