// Calendar
function incDate( sdate )
{
var iyear = sdate.getFullYear();
var imonth = sdate.getMonth() + 1;
if( imonth >= 12 ){
imonth = 0;
iyear++;
}
sdate.setYear( iyear );
sdate.setMonth( imonth );
return sdate;
}
function decDate( sdate )
{
var iyear = sdate.getFullYear();
var imonth = sdate.getMonth() - 1;
if( imonth < 0 ){
imonth = 11;
iyear--;
}
sdate.setYear( iyear );
sdate.setMonth( imonth );
return sdate;
}
function makeCalendar( year, month )
{
var isNS = navigator.appName.charAt(0) == "N";
varisMAC = navigator.userAgent.toUpperCase().indexOf("MAC" ) >= 0;
var isWIN = navigator.userAgent.toUpperCase().indexOf("WIN" ) >= 0;
var monthdays= new Array(0,31,28,31,30,31,30,31,31,30,31,30,31);
var week = new Array("S","M","T","W","T","F","S");
var nmonth = new Array("","JAN.","FEB.","MAR.","APR.","MAY.","JUN.","JUL.","AUG.","SEP.","OCT.","NOV.","DEC.");
var wcolor = new Array("#FF0000","#333333","#333333","#333333","#333333","#333333","#0000FF","#FF0000","#000000");
var bcolor = new Array("#FFFFFF","#FFFFFF","#FFFFFF","#FFFFFF","#FFFFFF","#FFFFFF","#FFFFFF","#FFFFFF","#FFFF66");
var special = new Array(3,21, 9,23, 1,1, 1,15, 2,11, 4,29, 5,3, 5,4, 5,5, 7,20, 9,15, 10,9, 11,3, 11,23, 12,23);
var cdate = new Date();
var cmonth = cdate.getMonth()+1;
var sdate = new Date();
if( year >= 0 ){
sdate.setYear( year );
sdate.setMonth( month-1 );
}else if( year == -2 ){
sdate = incDate( sdate );
}else if( year == -3 ) {
sdate = decDate( sdate );
}
year = sdate.getFullYear();
month= sdate.getMonth()+1;
if( ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0)){
monthdays[2]++;
}
sdate.setDate(1);
var count = sdate.getDay();
var day = 0;
var date = 1;
var flag = false;
var sflag = false;
var i,j;
with(document){
write( '
' );
write( '| ' );
}
if ( isWIN || isNS ){
document.write( ''+nmonth[month] + ' ' + year + ' |
' );
}
else document.write( ''+nmonth[month] + ' ' + year + '' );
with(document){
write( '' );
write( '' );
write( '' );
for( i = 0;i < 7; i++ ){
write( '| ' );
write( '' );
write( week[i]+' | ' );
}
write( ' ' );
flag = false;
bgcol = "";
for( i = 1; i <= monthdays[month] + count; i++ ){
sflag = false;
if( day >= count ){
str = ''+date+'';
/*
for( j = 0; j < special.length/2; j++ ){
if( ( special[j*2] == month ) && ( special[j*2+1] == date ) ){
bgcol = 'bgcolor="' + bcolor[7] + '"';
str = ''+str;
if( ( day % 7 ) == 0 ) flag = true;
sflag = true;
}
}
*/
if( ( sflag == false ) && flag == false ){
bgcol = 'bgcolor="' + bcolor[day%7] + '"';
str = ''+str;
}
if( ( ( day % 7 ) == 1 ) && flag == true ) {
bgcol = 'bgcolor="' + bcolor[7] + '"';
str = ''+str;
flag = false;
}
if( ( cmonth == month ) && ( cdate.getDate() == date ) ){
bgcol = 'bgcolor="' + bcolor[8] + '"';
}
for( j = 0; j < event.length; j++ ){
eyear = Math.floor( event[j]/10000 );
emonth = Math.floor( ( event[j]%10000 ) / 100 );
edate = event[j]%100;
if( ( eyear == year ) && ( emonth == month ) && (edate == date ) ){
str = ''+str;
str = str + " ";
}
}
date++;
}else{
str = "";
}
write(''+str+" | ");
if( day % 7 == 6 ) write("");
day++;
}
write("
|
");
}
}