/*----------------------
	カレンダー
----------------------*/

function SetCalendar()
{
	var nDate = new Date();	
	var nYear = nDate.getFullYear();
	var nMonth = nDate.getMonth();
	var nToday = nDate.getDate();
	var aDays = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
	var aWeek = new Array("日", "月", "火", "水", "木", "金", "土");
	var nDays;
	var nFirstDay;
	var i, j, k;

	// 年間休日2005
	var aHoliday = new Array(1,10,0,11,0,21,0,29,0,3,4,5,0,0,18,0,0,19,23,0,10,0,3,23,0,23,0);

	// ひと月の日数
	nDays = aDays[nMonth];
	if (nMonth == 1) {
		if (nYear % 400 == 0) nDays =29;
		else if (nYear % 100 == 0) nDays = 28;
		else if (nYear % 4 == 0) nDays= 29;
	}
	
	// 年月の描画
	document.write("<table style='width:140pt;border:1px solid gray; font-size:11pt'><tr>");
	document.write("<th colspan='7' style='border-style:solid; border-color:gray;border-width:0 0 1px 0'>");
	document.write(nYear, '年&nbsp;', nMonth+1, '月');
	document.write("</th></tr>");

	// 曜日の描画
	document.write("<tr>");
	for (i = 0; i < 7; i++) 
		document.write("<th style='border:0; font-weight:normal'>", aWeek[i]);
	document.write("</th></tr>");

	// 当月の祝日の配列を作成
	var aFete = new Array();	
	for (i=0, j=0; j<=nMonth-1; i++) if (aHoliday[i] == 0) j++;
	for (; aHoliday[i] != 0; i++) aFete.push(aHoliday[i]);

	// 日にちの描画
	nDate.setDate(1);
	nFirstDay = nDate.getDay();
	document.write("<tr>");
	for (i = 0, j = 0; i < nFirstDay; i++, j++) {
		document.write("<td style='border:0'>&nbsp;</td>");
	}
	for (i = 1; i <= nDays; i++) {
		var bThru = false;
		var sStyle;
		for (k in aFete) {
			if (i == aFete[k]) {
				sStyle = i == nToday?
					"style='border:1px solid green; text-align:center;background-color:#ffcccc'":
					 "style='border:0; text-align:center; background-color:#ffcccc'";
				bThru = true;
			}
		}
		if (!bThru) {
			if (j == 0) {
				sStyle = i == nToday?
					"style='border:1px solid green; text-align:center; background-color:#ffcccc'":
					"style='border:0; text-align:center; background-color:#ffcccc'";
			} else if (j == 6) {
				sStyle = i == nToday?
					"style='border:1px solid green; text-align:center; background-color:#ccccff'":
					"style='border:0; text-align:center; background-color:#ccccff'";
			} else {
				sStyle = i == nToday?
					"style='border:1px solid green; text-align:center; background-color:#ffffff'":
					"style='border:0; text-align:center; background-color:#ffffff'";
			}
		}
		document.write("<td " + sStyle + ">" +  i + "</td>");
		if (++j == 7 && i != nDays) {
			document.write("</tr>\n<tr>");
			j = 0;
		}
	}
	document.write("</tr>");
}

