var todaydate=new Date();
var curmonth=todaydate.getMonth()+1; //get current month (1-12)
var curyear=todaydate.getFullYear(); //get current year

// setup //
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();
	oD.setFullYear(y);

	var todaydate=new Date() //DD added
	var scanfortoday=(y==todaydate.getFullYear() && m==todaydate.getMonth()+1)? todaydate.getDate() : 0 //DD added

	dim[1]=(((oD.getFullYear()%100!=0)&&(oD.getFullYear()%4==0))||(oD.getFullYear()%400==0))?29:28;
	oD.setMonth(m-1);
	oD.setDate(1);
	oD.od=oD.getDay()+1;
	var t='<div class="'+cM+'"><table class="'+cM+'" cols="7" cellpadding="0" border="'+brdr+'" cellspacing="1" bgcolor=#ffffff><tr align="center">';
	t+='<td colspan="7" align="center" class="'+cH+'">'+mn[m-1]+' (Chinese only)</td></tr><tr align="center">';
	for(s=0;s<7;s++)t+='<td class="'+cDW+'">'+"SMTWTFS".substr(s,1)+'</td>';
	t+='</tr><tr align="center">';
	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) //DD added
		{	x='<span id="today"><a href="javascript:showevent(\''+x+'/'+curmonth+'/'+curyear+'\');">'+x+'</a></span>' //DD added
                   }
                   else if(x=="&nbsp;"){
                          x = x;
                   }
                   else{
                           x='<a href="javascript:showevent(\''+x+'/'+curmonth+'/'+curyear+'\');">'+x+'</a>'
                   }
                             t+='<td class="'+cD+'">'+x+'</td>';

		if(((i)%7==0)&&(i<36))t+='</tr><tr align="center">';
		}
//alert("t="+t);
		return t+='</tr></table></div>';
	}
	
// print calendar //	

document.write(buildCal(curmonth ,curyear, "main", "month", "daysofweek", "days", 0));