var moy = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
var today = new Date;
var selDate = today.getFullYear() + getmmdd(today.getMonth() + 1, today.getDate());
var events = new Array();
function dispCal(yy, mm, id)
{
if (mm < 0 || mm > 12) {
alert("month must be between 1 and 12");
return false;
}
if (yy != 0 && (yy < 1901 || yy > 2100)) {
alert("year must be after 1900 and before 2101");
return false;
}
var dow = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
var calendar = new Date;
var today = calendar.getDate();
calendar.setDate(1);
if (yy > 1900) {
calendar.setFullYear(yy);
}
if (mm > 0) {
calendar.setMonth(mm - 1);
}
var yy = year = calendar.getFullYear();
var month = calendar.getMonth();
calendar.setDate(today);
var weekday = calendar.getDay();
var daysInMonth = monthlength(month + 1, year);
var hilite_start = '
';
var td_start = ' | ';
var cal = '|
';
for (dex = 0; dex < 7; dex++) {
cal += td_start + dow[dex] + "";
}
cal += " ";
var day2 = today;
for (dex = today; dex > 6; dex -= 7) {
day2 = dex;
}
weekday -= day2 - 1;
while (weekday < 0) {
weekday += 7;
}
for (dex = 0; dex < weekday; dex++) {
cal += td_start + " ";
}
for (dex = 1; dex <= daysInMonth; dex++) {
if (weekday == 7) {
cal += " ";
weekday = 0;
}
var ctevent = nextDate(year + getmmdd(month + 1, dex),events[id]);
if(ctevent == "")
{
if (selDate == year + getmmdd(month + 1, dex)){
cal += hilite_start + "" + dex + "";
} else {
cal += td_start + "" + dex + "";
}
}
else
{
var temp = ctevent.split(':');
var linktext = temp[1];
var linklink = temp[0];
cal += td_start + "" + dex + "";
}
weekday += 1;
}
for (dex = weekday; dex < 7; dex++) {
cal += td_start + " ";
}
cal += '
';
if (document.getElementById) {
var mmb = month;
mm = month + 1;
var yya = yyb = yy;
if (mmb < 1) {
mmb += 12;
yyb--;
}
var mma = month + 2;
if (mma > 12) {
mma -= 12;
yya++;
}
var yb = yy - 1;
var ya = yy + 1;
cal += " ";
} else {
cal += " ";
}
cal += " ";
return cal;
}
function clickDate(day, month, year,dA) {
var ct = nextDate(year + getmmdd(month + 1, day),dA);
if (ct != "") {
return 'class="cal_link"';
}
}
function nextDate(yymmdd,dA) {
var x = dA.length;
for (var i = 0; i < x; i++){if (dA[i].substr(0, 8) == yymmdd) {return dA[i].substr(8);}}
return "";
}
function getmmdd(mm, dd)
{
return (mm > 9 ? "" + mm : "0" + mm) + (dd > 9 ? dd : "0" + dd);
}
function monthlength(month, year) {
var dd = new Date(year, month, 0);
return dd.getDate();
}
function calstart(id,list) {
events[id] = list;
document.getElementById(id).innerHTML = dispCal(0, 0,id)
}
|