var Calendar = new Date();
var year = Calendar.getYear();
var month = Calendar.getMonth();
var today = Calendar.getDate();
var weekday = Calendar.getDay();
var month_of_year = new Array 
('January','February','March','April','May','June','July','August','September','October','November','December');
var day_of_week = new Array ('S','M','T','W','T','F','S');
var DAYS_OF_WEEK = 7; 
var DAYS_OF_MONTH = 31; 
var cal; 
Calendar.setDate(1);
Calendar.setMonth(month); 
var TR_start = '<TR>';
var TR_end = '</TR>';
var highlight_start = '<TD class="KalHi">';
var highlight_end   = '</TD>';
var TD_start = '<TD class="KalLo">';
var TD_Day_start = '<TD class="KalDay">';
var TD_ToDay_start = '<TD class="KalDayHi">';
var TD_end = '</TD>';
if ( year < 1900 ) year += 1900;
cal =  '<TABLE  class="Kal">' + TR_start;
cal += '<TD class="KalHead" COLSPAN="' + DAYS_OF_WEEK + '">';
cal += month_of_year[month]  + '&nbsp;&nbsp;' + year + TD_end + TR_end;
cal += TR_start;
for(index=0; index < DAYS_OF_WEEK; index++)
{
if(weekday == index)
cal += TD_ToDay_start + day_of_week[index] + TD_end;
else
cal += TD_Day_start + day_of_week[index] + TD_end;
}
cal += TD_end + TR_end;
cal += TR_start;
for(index=0; index < Calendar.getDay(); index++)
cal += TD_start + '  ' + TD_end;
for(index=0; index < DAYS_OF_MONTH; index++)
{
if( Calendar.getDate() > index )
{
  week_day =Calendar.getDay();
  if(week_day == 0)
  cal += TR_start;
  if(week_day != DAYS_OF_WEEK)
  {
  var day  = Calendar.getDate();
  if( today==Calendar.getDate() )
  cal += highlight_start + day + highlight_end + TD_end;
  else  
  cal += TD_start + day + TD_end;
  }
  if(week_day == DAYS_OF_WEEK)
  cal += TR_end;
  }
  Calendar.setDate(Calendar.getDate()+1);
}
cal += '</TD></TR></TABLE>';
document.write(cal);

