var ns6=document.getElementById&&!document.all;
var ie4=document.all;

var dayHl = new Array(31);
var dayID = new Array(31);
var monHl = new Array(31);

var Selected_Month;
var Selected_Year;
var Current_Date = new Date();
var Current_Month = Current_Date.getMonth();

var Days_in_Month = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
//var Month_Label = new Array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December');
var Month_Label = new Array('มกราคม', 'กุมภาพันธ์', 'มีนาคม', 'เมษายน', 'พฤษภาคม', 'มิถุนายน', 'กรกฎาคม', 'สิงหาคม', 'กันยายน', 'ตุลาคม', 'พฤศจิกายน', 'ธันวาคม');

var Current_Year = Current_Date.getYear();
//alert(Current_Year);
if (Current_Year < 1000)
Current_Year+=1900
//alert(Current_Year);


var Today = Current_Date.getDate();

function Header(Year, Month) {
	if (Month == 1) {
   		Days_in_Month[1] = ((Year % 400 == 0) || ((Year % 4 == 0) && (Year % 100 !=0))) ? 29 : 28;
   	}
   	var Header_String = Month_Label[Month] + ' ' + Year;
   	//alert(Header_String);
   	return Header_String;
}

function Make_Calendar(Year, Month) {
   var First_Date = new Date(Year, Month, 1);
   var Heading = Header(Year, Month);
   var First_Day = First_Date.getDay() + 1;
   if (((Days_in_Month[Month] == 31) && (First_Day >= 6)) ||
       ((Days_in_Month[Month] == 30) && (First_Day == 7))) {
      var Rows = 6;
   }
   else if ((Days_in_Month[Month] == 28) && (First_Day == 1)) {
      var Rows = 4;
   }
   else {
      var Rows = 5;
   }

   var HTML_String;
   HTML_String = '<table width=100% cellspacing=0 cellpadding=0>';
   HTML_String += '<tr><td valign="top">';
   HTML_String += '<table BORDER=1 CELLSPACING=2 cellpadding=2 FRAME="box" BGCOLOR="FFFFFF" BORDERCOLORLIGHT="99CCFF" BORDERCOLORDARK="99CCFF">';


   HTML_String += '<tr><th class=thTopic BGCOLOR="99CCFF" BORDERCOLOR="000000"><a href="JavaScript:Skip(\'-\');"><</a></font></th>';
   //HTML_String += '<tr><th class=thTopic BGCOLOR="99CCFF" BORDERCOLOR="000000"><a href="index.jsp" onclick="Skip(\'-\');"><</a></font></th>';

   HTML_String += '<th class=thTopic colspan=5 BGCOLOR="99CCFF" BORDERCOLOR="000000">' + Heading + '</font></th>';
   HTML_String += '<th class=thTopic colspan=7 BGCOLOR="99CCFF" BORDERCOLOR="000000">';
   //HTML_String += "<a href=JavaScript:Skip('+," + dayHl + "');>></a>";
   HTML_String += "<a href=JavaScript:Skip('+');>></a>";
   HTML_String += "</font></th></tr>";

   HTML_String += '<tr><th width=15 class=thTopic ALIGN="CENTER" BGCOLOR="FFFFFF" BORDERCOLOR="000000">อา</th>';
   HTML_String += '<th width=15 class=thTopic ALIGN="CENTER" BGCOLOR="FFFFFF" BORDERCOLOR="000000">จ.</th>';
   HTML_String += '<th width=15 class=thTopic ALIGN="CENTER" BGCOLOR="FFFFFF" BORDERCOLOR="000000">อ.</th>';
   HTML_String += '<th width=15 class=thTopic ALIGN="CENTER" BGCOLOR="FFFFFF" BORDERCOLOR="000000">พ.</th>';
   HTML_String += '<th width=15 class=thTopic ALIGN="CENTER" BGCOLOR="FFFFFF" BORDERCOLOR="000000">พฤ</th>';
   HTML_String += '<th width=15 class=thTopic ALIGN="CENTER" BGCOLOR="FFFFFF" BORDERCOLOR="000000">ศ.</th>';
   HTML_String += '<th width=15 class=thTopic ALIGN="CENTER" BGCOLOR="FFFFFF" BORDERCOLOR="000000">ส.</th></tr>';

	var Day_Counter = 1;
  	var Loop_Counter = 1;
	var num = 0;
	var strColorS, strColorE;
	
	//alert(Current_Month);
	//alert(Selected_Month);
	//alert(monHl[0]);
	//alert(monHl[1]);

	for (var j = 1; j <= Rows; j++) {
		HTML_String += '<tr ALIGN="left" VALIGN="top">';
      	for (var i = 1; i < 8; i++) {
      		//alert(First_Day + ", " + Day_Counter + ", " + Days_in_Month[Month]);
      		if ((Loop_Counter >= First_Day) && (Day_Counter <= Days_in_Month[Month])) {
					for (var num = 0; num < dayHl.length; num++) {
						//alert(Day_Counter);
						//if (Day_Counter == dayHl[num] && Current_Month == (Selected_Month)) {
						if (Day_Counter == dayHl[num]) {
							//strColorS = "<a href='activityDetail.jsp?id=" + dayID[num] + "'><font color=blue>";
							if (Selected_Month == (monHl[num])) {
								strColorS = "<a href='activityList.jsp?d=" + dayHl[num] + "&m=" + (Selected_Month+1) + "&y=" + (Selected_Year) + "'><font color=blue>";
								strColorE = "</a></font>";
								break;
							}
						} else {
							strColorS = "";
							strColorE = "";
						}
					}

				if ((Day_Counter == Today) && (Year == Current_Year) && (Month == Current_Month)) {
					HTML_String += '<td align="center" class=enFont_small BGCOLOR="FFFFFF" BORDERCOLOR="000000"><strong>' + strColorS + '<font color="red">' + Day_Counter + '</font>' + strColorE + '</strong></td>';
					//HTML_String += '<td align="center" class=enFont_small BGCOLOR="FFFFFF" BORDERCOLOR="000000"><strong><font color="red">' + Day_Counter + '</font></strong></td>';
				} else {
					HTML_String += '<td align="center" class=enFont_small BGCOLOR="FFFFFF" BORDERCOLOR="000000">' + strColorS + Day_Counter + strColorE + '</td>';
				}
            	Day_Counter++;
         	} else {
            	HTML_String += '<td align="center" class=enFont_small BORDERCOLOR="C0C0C0"> </td>';
         	}
         	Loop_Counter++;
		}

      	HTML_String += '</tr>';
		num++;
	}
   	HTML_String += '</table></td></tr></table>';
   	cross_el=ns6? document.getElementById("Calendar") : document.all.Calendar
   	cross_el.innerHTML = HTML_String;
}


function Check_Nums() {
   if ((event.keyCode < 48) || (event.keyCode > 57)) {
      return false;
   }
}



function On_Year() {
	var Year = document.when.year.value;
	var current_date = new Date();

	//alert(Year);
	if (Year.length == 4) {
		current_date.getMonth();
		//Selected_Month = document.when.month.selectedIndex;
		document.when.month.selectedIndex = current_date.getMonth();
		Selected_Month = document.when.month.selectedIndex;
      	Selected_Year = Year;
      	//alert(Selected_Month);
      	Make_Calendar(Selected_Year, Selected_Month);
   }
}

function On_Month() {
   var Year = document.when.year.value;
   if (Year.length == 4) {
      Selected_Month = document.when.month.selectedIndex;
      Selected_Year = Year;
      Make_Calendar(Selected_Year, Selected_Month);
   }
   else {
      alert('Please enter a valid year.');
      document.when.year.focus();
   }
}


function Defaults() {
   if (!ie4&&!ns6)
   return
   var Mid_Screen = Math.round(document.body.clientWidth / 2);
   document.when.month.selectedIndex = Current_Month;
   document.when.year.value = Current_Year;
   Selected_Month = Current_Month;
   Selected_Year = Current_Year;
   Make_Calendar(Current_Year, Current_Month);
}


function Skip(Direction) {
	//alert(dayHl);
	//alert(monHl);
   if (Direction == '+') {
      if (Selected_Month == 11) {
         Selected_Month = 0;
         Selected_Year++;
      }
      else {
         Selected_Month++;
      }
   }
   else {
      if (Selected_Month == 0) {
         Selected_Month = 11;
         Selected_Year--;
      }
      else {
         Selected_Month--;
      }
   }
   //alert("Selected_Month :  " + Selected_Month);
   Make_Calendar(Selected_Year, Selected_Month);
   document.when.month.selectedIndex = Selected_Month;
   document.when.year.value = Selected_Year;
}

function assign_dayHl(obj) {
	//alert(obj);
	for (i = 0; i < obj.length; i++) {
		dayHl[i] = obj[i];
		//alert(dayHl[i]);
	}
}

function assign_dayID(obj) {
	//alert(obj);
	for (i = 0; i < obj.length; i++) {
		dayID[i] = obj[i];
	}
}