//投稿がある日：何年何月何日か？
var entrydays1 = new Array();
var entrydays2 = new Array();
var entrydays3 = new Array();


entrydays1 = new Array(2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010);
entrydays2 = new Array(6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 11, 11);
entrydays3 = new Array(21, 23, 26, 27, 28, 30, 2, 3, 4, 5, 7, 8, 10, 11, 12, 15, 18, 19, 20, 25, 26, 27, 28, 29, 30, 31, 1, 2, 3, 6, 7, 8, 9, 11, 12, 13, 15, 16, 17, 18, 19, 21, 22, 23, 26, 27, 28, 29, 30, 1, 2, 4, 5, 6, 8, 9, 10, 11, 12, 13, 15, 18, 19, 20, 21, 25, 26, 27, 2, 3, 4, 5, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 23, 24, 25, 26, 27, 28, 30, 31, 1, 4, 5, 6, 7, 12, 13, 14, 15, 16, 17, 19, 21, 22, 23, 24, 26, 27, 28, 29, 1, 2, 3, 5, 6, 7, 9, 10, 11, 12, 13, 16, 18, 19, 20, 21, 23, 24, 25, 26, 27, 28, 30, 31, 3, 5, 6, 7, 8, 9, 10, 11, 14, 15, 16, 17, 18, 19, 21, 22, 23, 24, 26, 28, 29, 30, 31, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 23, 24, 25, 26, 27, 28, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 16, 17, 18, 20, 21, 22, 24, 25, 27, 28, 29, 30, 31, 1, 2, 3, 4, 6, 8, 10, 11, 13, 14, 15, 16, 17, 18, 19, 22, 24, 25, 26, 27, 28, 29, 1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 15, 16, 18, 19, 20, 22, 23, 26, 27, 28, 29, 30, 31, 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 13, 15, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 2, 3, 4, 6, 8, 9, 10, 11, 14, 15, 25, 16, 17, 18, 19, 20, 21, 22, 23, 24, 27, 28, 31, 1, 3, 4, 5, 6, 7, 8, 10, 13, 14, 15, 16, 17, 19, 20, 26, 27, 28, 29, 30, 31, 2, 3, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 22, 23, 24, 25, 26, 29, 30, 2, 3, 15, 21, 23, 24, 30, 21, 27);



// 祝日1：何月の何日か？
var Holidays1 = new Array(1,1, 2,11, 3,21, 4,29, 5,3, 5,4, 5,5, 9,23, 11,3, 11,23, 12,23);
// 祝日2：何月の第何月曜日か？
var Holidays2 = new Array(1,2, 7,3, 9,3, 10,2);

// 現在の年、月、日の取得
var now = new Date();
var thisYear = now.getFullYear();
var thisMonth = now.getMonth() + 1;
var today = now.getDate();

// 表示年月の記憶
var year = thisYear;
var month = thisMonth;

var monthdays = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
var days = new Array("月", "火", "水", "木", "金", "土", "日");

function showCalen(n){
month += n;
if (month == 0) { year--; month=12; }
else if (month == 13) { year++; month=1; }
var flag = ((year == thisYear) && (month == thisMonth))? 1: 0;

var date = new Date(year, month-1, 1);
var startDay = date.getDay();

var dateMax = monthdays[month - 1];
if (month == 2 && ((year%4 == 0 && year%100 != 0) || year%400 == 0)) dateMax = 29;

// 休日配列の初期化
var holidays = new Array();
for (var i=0; i<=dateMax; i++) holidays[i] = 0;

// 祝日1 の処理
var firstSunday = (startDay == 0)? 1: 8 - startDay; //最初の日曜日は何日か
for (i=0; i<Holidays1.length; i+=2) { //Holidays1の配列の数だけ繰り返す（2個ずつの配列なので2個ずつ増やす）
if (Holidays1[i] == month) {
holidays[Holidays1[i+1]] = 1;
for (var j=firstSunday; j<dateMax; j+=7)
if (Holidays1[i+1] == j) holidays[j+1] = 1;  // 振替休日
}
}
// 祝日2 の処理
var mondays = new Array();
var firstMonday = (startDay < 2)? 2 - startDay: 9 - startDay;
for (i=0; i<Holidays2.length; i+=2)
if (Holidays2[i] == month) holidays[(Holidays2[i+1] - 1) * 7 + firstMonday] = 1;


// 投稿日配列の初期化
var entryday = new Array();
for (i=0; i<=dateMax; i++) entryday[i] = 0;
// 投稿日の処理
for (i=0; i<entrydays1.length; i++) { //entrydaysの配列の数だけ繰り返す（3個ずつの配列なので3個ずつ増やす）
if (entrydays1[i] == year && entrydays2[i] == month) {
entryday[entrydays3[i]] = 1;
}
}


var htmlStr = "<p>" + year + "年" + month + "月</p>" + "<div class=\"calendar\">"
htmlStr += "<table width=\"100%\">" + "<tr>";
for (i=0; i<=6; i++) htmlStr += "<th>" + days[i] + "</th>";
htmlStr += "</tr>";
//月曜始まりで28日の月は空行を入れる
if(startDay == 1 && dateMax < 29){
htmlStr += "<tr>"
col=0;
for ( ; col<7; col++) htmlStr += "<td class=\"nichi\">&nbsp</td>";
htmlStr += "</tr>";
}
//最初の日まで空枠を入れる
var col=0;
htmlStr +="<tr>";
if (startDay == 0) {
for ( ; col<6; col++) htmlStr += "<td class=\"nichi\">&nbsp</td>";
}
else{
for ( ; col<startDay-1; col++) htmlStr += "<td class=\"nichi\">&nbsp</td>";
}
//日付部分
for (i=1; i<=dateMax; i++) {
if (flag == 1 && i == today) {
if (holidays[i] == 1 || col == 6) htmlStr += "<td class=\"nichi\" class=\"nichi\" style =\"border-color:#ffe4e1;\">";
else if (col == 5) htmlStr += "<td class=\"nichi\" style =\"border-color:#ffe4e1;\">";
else htmlStr += "<td class=\"nichi\" style =\"border-color:#ffe4e1;\">";
}
else if (holidays[i] == 1 || col == 6) htmlStr += "<td class=\"nichi\">"; //日曜日
else if (col == 5) htmlStr += "<td class=\"nichi\">"; //土曜日
else htmlStr += "<td class=\"nichi\">";
if (entryday[i] == 1){
htmlStr += "<a href=\"daily.php?y=" + year + "&m=" + month + "&d=" + i + "\">";
}

htmlStr += i + "</td>";

if (entryday[i] == 1){
htmlStr += "</a>";
}
if (col == 6) { htmlStr += "</tr>"; col=0; } else col++;
}
//最後の日から行の終わりまで空枠を入れる
if (col != 0) {
for ( ; col<7; col++) htmlStr += "<td class=\"nichi\">&nbsp</td>";
}
htmlStr += "</tr>";
//行が足りないときは空行を入れる
if(startDay == 0 && dateMax < 30 || startDay > 0 && startDay < 7 && dateMax < 37 - startDay){
htmlStr += "<tr>"
col=0;
for ( ; col<7; col++) htmlStr += "<td class=\"nichi\">&nbsp</td>";
htmlStr += "</tr>";
}
htmlStr += "</table>";

htmlStr += "<img src=\"./img/cursorL.png\" onmouseover=\"this.src='./img/cursorLselected.png'\" onmouseout=\"this.src='./img/cursorL.png'\" onclick=\"showCalen(-1)\" style =\"margin:2px;\">";
htmlStr += "<img src=\"./img/cursorR.png\" onmouseover=\"this.src='./img/cursorRselected.png'\" onmouseout=\"this.src='./img/cursorR.png'\" onclick=\"showCalen(1)\" style =\"margin:2px;\">";

document.getElementById("calen").innerHTML = htmlStr;
}

document.write("<div class =\"gadget\">" + "<div id=\"calen\">");
showCalen(0);
document.write("</div></div>");