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

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('Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro');

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


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;
   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 = '<table BGCOLOR="#6699CC" BORDER="0" WIDTH="240"><tr><td  valign="top"><table BORDER=0 CELLSPACING=1 width="100%" cellpadding=2  BGCOLOR="#000066">';

   HTML_String += '<tr><th colspan=7 BGCOLOR="#006699" BORDERCOLOR="000000"><FONT FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2" COLOR="#FFFFFF">' + Heading + '</font></th></tr>';

   HTML_String += '<tr><td ALIGN="CENTER" BGCOLOR="gold" BORDERCOLOR="000000" ><FONT FACE="Verdana, Arial, Helvetica, sans-serif" SIZE=1 COLOR="#990000"><b>Dom</b></FONT></td><td ALIGN="CENTER" BGCOLOR="gold" BORDERCOLOR="000000"><FONT FACE="Verdana, Arial, Helvetica, sans-serif" SIZE=1 COLOR="#0066FF"><b>Seg</b></FONT></td><td ALIGN="CENTER" BGCOLOR="gold" BORDERCOLOR="000000"><FONT FACE="Verdana, Arial, Helvetica, sans-serif" SIZE=1 COLOR="#0066FF"><b>Ter</b></FONT></td><td ALIGN="CENTER" BGCOLOR="gold" BORDERCOLOR="000000" ><FONT FACE="Verdana, Arial, Helvetica, sans-serif" SIZE=1 COLOR="#0066FF" ><b>Qua</b></FONT></td>';

   HTML_String += '<td ALIGN="CENTER" BGCOLOR="gold" BORDERCOLOR="000000"><FONT FACE="Verdana, Arial, Helvetica, sans-serif" SIZE=1 COLOR=#0066FF><b>Qui</b></FONT></td><td ALIGN="CENTER" BGCOLOR="gold" BORDERCOLOR="000000"><FONT FACE="Verdana, Arial, Helvetica, sans-serif" SIZE=1 COLOR=#0066FF><b>Sex</b></FONT></td><td ALIGN="CENTER" BGCOLOR="gold" BORDERCOLOR="000000"><FONT FACE="Verdana, Arial, Helvetica, sans-serif" SIZE=1 COLOR=#0066FF><b>Sáb</b><FONT></td></tr>';

   var Day_Counter = 1;
   var Loop_Counter = 1;
   for (var j = 1; j <= Rows; j++) {
      HTML_String += '<tr ALIGN="left" VALIGN="top">';
      for (var i = 1; i < 8; i++) {
         if ((Loop_Counter >= First_Day) && (Day_Counter <= Days_in_Month[Month])) {
            if ((Day_Counter == Today) && (Year == Current_Year) && (Month == Current_Month)) {
               HTML_String += '<td BGCOLOR="#006699" ALIGN="CENTER"><FONT FACE="Verdana, Arial, Helvetica, sans-serif" SIZE=2 color="gold"><strong>' + Day_Counter + '</FONT></strong></td>';
            }
            else {
               HTML_String += '<td BGCOLOR="#006699"  ALIGN="CENTER"><FONT FACE="Verdana, Arial, Helvetica, sans-serif" SIZE=2 color="#00CCFF">' + Day_Counter + '</td>';
            }
            Day_Counter++;    
         }
         else {
            HTML_String += '<td BGCOLOR="#006699"> </td>';
         }
         Loop_Counter++;
      }
      HTML_String += '</tr>';
   }
   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;
   if (Year.length == 4) {
      Selected_Month = document.when.month.selectedIndex;
      Selected_Year = Year;
      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) {
   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--;
      }
   }
   Make_Calendar(Selected_Year, Selected_Month);
   document.when.month.selectedIndex = Selected_Month;
   document.when.year.value = Selected_Year;
}
