<!-- Begin
//  SET ARRAYS
var day_of_week = new Array('M','S','S','R','K','J','S');
var month_of_year = new Array('Januari','Pebruari','Maret','April','Mei','Juni','Juli','Agustus','September','Oktober','Nopember','Desember');

//  DECLARE AND INITIALIZE VARIABLES
var Calendar = new Date();

var year = Calendar.getYear();	    // Returns year
var month = Calendar.getMonth();    // Returns month (0-11)
var today = Calendar.getDate();    // Returns day (1-31)
var weekday = Calendar.getDay();    // Returns day (1-31)

var DAYS_OF_WEEK = 7;    // "constant" for number of days in a week
var DAYS_OF_MONTH = 31;    // "constant" for number of days in a month
var cal;    // Used for printing

Calendar.setDate(1);    // Start the calendar day at '1'
Calendar.setMonth(month);    // Start the calendar month at now


/* VARIABLES FOR FORMATTING
NOTE: You can format the 'BORDER', 'BGCOLOR', 'CELLPADDING', 'BORDERCOLOR'
      tags to customize your caledanr's look. */

var TR_start = '<TR>';
var TR_end = '</TR>';
var highlight_start = '<TD WIDTH=18><TABLE CELLSPACING=0 BORDER=0 BGCOLOR=#978CC8 BORDERCOLOR=#FF6603><TR><TD WIDTH=18 HEIGHT=15><CENTER><b><font face=verdana color=#ffffff size=1>';
var highlight_end   = '</font></b></CENTER></TD></TR></TABLE>';
var TD_start = '<TD WIDTH=18 BGCOLOR=#FFA620 HEIGHT=15><CENTER><font color=#FFFFFF size=1>';
var TD_end = '</font></CENTER></TD>';
var TD_startd = '<TD WIDTH=18><CENTER><font color=#FFFFFF size=1>';
var TD_endd = '</font></CENTER></TD>';
var light_start = '<TD WIDTH=18><TABLE CELLSPACING=0 BORDER=0 BORDERCOLOR=#8DB91F><TR><TD WIDTH=18 BGCOLOR=#8DB91F HEIGHT=15><CENTER><font face=verdana color=#FFFFFF size=1>';
var light_end   = '</font></CENTER></TD></TR></TABLE>';
/* BEGIN CODE FOR CALENDAR
NOTE: You can format the 'BORDER', 'BGCOLOR', 'CELLPADDING', 'BORDERCOLOR'
tags to customize your calendar's look.*/

cal =  '<TABLE CELLSPACING=0 CELLPADDING=0><TR><TD>';
cal += '<TABLE CELLPADDING=0 CELLSPACING=1>';//disini tambah TR dulu
//cal += '<TD COLSPAN="' + DAYS_OF_WEEK + '" BGCOLOR=""><CENTER><B>';
//cal += '<font face=verdana color=#978CC8 size=2>'+month_of_year[month]  + '   ' + year + '</B>' +'</font>'+TD_end + TR_end;
cal += TR_start;

//   DO NOT EDIT BELOW THIS POINT  //

// LOOPS FOR EACH DAY OF WEEK
for(index=0; index < DAYS_OF_WEEK; index++)
{

// BOLD TODAY'S DAY OF WEEK
if(weekday == index)
cal += highlight_start + day_of_week[index] + highlight_end;

// PRINTS DAY
else
cal +=light_start+day_of_week[index]+light_end;
}

cal += TD_end + TR_end;
cal += TR_start;

// FILL IN BLANK GAPS UNTIL TODAY'S DAY
for(index=0; index < Calendar.getDay(); index++)
cal += TD_startd + '  ' + TD_endd;

// LOOPS FOR EACH DAY IN CALENDAR
for(index=0; index < DAYS_OF_MONTH; index++)
{
if( Calendar.getDate() > index )
{
  // RETURNS THE NEXT DAY TO PRINT
  week_day =Calendar.getDay();

  // START NEW ROW FOR FIRST DAY OF WEEK
  if(week_day == 0)
  cal += TR_start;
  
  if(week_day != DAYS_OF_WEEK)
  {

  // SET VARIABLE INSIDE LOOP FOR INCREMENTING PURPOSES
  var day  = Calendar.getDate();

  // HIGHLIGHT TODAY'S DATE
  if( today==Calendar.getDate() )
  cal += highlight_start + day + highlight_end + TD_end;

  // PRINTS DAY
  else
  cal += TD_start + day + TD_end;
  }

  // END ROW FOR LAST DAY OF WEEK
  if(week_day == DAYS_OF_WEEK)
  cal += TR_end;
  }

  // INCREMENTS UNTIL END OF THE MONTH
  Calendar.setDate(Calendar.getDate()+1);

}// end for loop

cal += '</TD></TR></TABLE></TABLE>';

//  PRINT CALENDAR
document.write(cal);

//  End -->