
/*
   -----------------------------------------------------
   カレンダー（リンク機能付き）
   Ver. 1.0.0
   update 2008.10.25
   Copyright (C) WEB-JOZU  URL:http://www.web-jozu.com/
   -----------------------------------------------------
*/


function holidaySet(MM,DD,WEEK,DAY,TTL){
	holiMM[i] = MM; holiDD[i] = DD; holiWEEK[i] = WEEK; holiDAY[i] = DAY; holiTTL[i++] = TTL;
}

function linkdaySet(MM,DD,ACT,URL,TTL){
	this['link' + MM + 'MM']['ok'] = "ok";

	this['link' + MM + 'MM']['d' + DD] = new Array;
	this['link' + MM + 'MM']['d' + DD]['act'] = ACT;
	this['link' + MM + 'MM']['d' + DD]['url'] = URL;
	this['link' + MM + 'MM']['d' + DD]['ttl'] = TTL;
}

function showHide(OBJ,nowOBJ){
	if(document.getElementById) {
		document.getElementById(OBJ).style.display = "block";
		document.getElementById(nowOBJ).style.display = "none";
	}
}

function showTtl(MM,DD){
	if(document.getElementById && this['link' + MM + 'MM']['d' + DD]['ttl']) {
		document.getElementById('d' + MM + DD).innerHTML = '<span class="linkPopup"><span class="popArrow">△</span><span class="popTxt">' + this['link' + MM + 'MM']['d' + DD]['ttl'] + '</span>';
	}
}

function hideTtl(MM,DD){
	if(document.getElementById) {
		document.getElementById('d' + MM + DD).innerHTML = '';
	}
}

function linkGo(MM,DD){
	actObj = this['link' + MM + 'MM']['d' + DD]['act'];
	urlObj = this['link' + MM + 'MM']['d' + DD]['url'];

	if(actObj == 0 || urlObj == ""){

	}else if(actObj == 1){
		location.href = 'http://' + urlObj;

	}else if(actObj == 2){
		window.open('http://' + urlObj, null);

	}else if(actObj == 3){
		window.open('http://' + urlObj, 'newWin', 'width=' + winWW + ', height=' + winHH + ', menubar=yes, toolbar=yes, scrollbars=' + winSCL + '');
	}
}


//リンクを設定
for(i=1; i<=12; i++){
	this['link' + i + 'MM'] = new Array;
	this['link' + i + 'MM']['ok'] = "";
}

i = 0;





/* ---------- 設定領域 start ---------- */

//リンクを設定
//linkdaySet(月,日,ウィンドウ [0:リンクなし, 1:自win, 2:別win, 3:PopUpWin],リンク先,説明)

linkdaySet(7,1,0,'','とりわさ');
linkdaySet(7,2,0,'','生しらす');
linkdaySet(7,3,0,'','海老チリソース煮');
//linkdaySet(7,4,0,'','ｱﾂｱﾂ 肉春巻き');
linkdaySet(7,5,0,'','はまちの刺身');
linkdaySet(7,6,0,'','馬刺し<br />人気急上昇中!');
linkdaySet(7,7,0,'','ﾋﾟﾘ辛 チョリソー');
linkdaySet(7,8,0,'','当日のお楽しみ');
linkdaySet(7,9,0,'','当日のお楽しみ');
linkdaySet(7,10,0,'','当日のお楽しみ');
//linkdaySet(7,11,0,'','当日のお楽しみ');
linkdaySet(7,12,0,'','<img src="/img/beer.jpg" style="float:left;" width="43" height="58" alt="写真" vspace="5">　生ビール(中)<br />　気の済むまで<br />　どうぞ･･･');
linkdaySet(7,13,0,'','アジのタタキ');
linkdaySet(7,14,0,'','当日のお楽しみ');
linkdaySet(7,15,0,'','チキン南蛮');
linkdaySet(7,16,0,'','当日のお楽しみ');
linkdaySet(7,17,0,'','当日のお楽しみ');
linkdaySet(7,18,0,'','鶏皮餃子4ヶ');
//linkdaySet(7,19,0,'','当日のお楽しみ');
linkdaySet(7,20,0,'','生カボスサワー又は<br />玄米緑茶ハイ');
linkdaySet(7,21,0,'','当日のお楽しみ');
linkdaySet(7,22,0,'','サンマの塩焼き');
linkdaySet(7,23,0,'','当日のお楽しみ');
linkdaySet(7,24,0,'','当日のお楽しみ');
//linkdaySet(7,25,0,'','生しらす');
linkdaySet(7,26,0,'','鰻の蒲焼と<br />肝串のセット');
linkdaySet(7,27,0,'','豚の生姜焼き');
linkdaySet(7,28,0,'','レバーフライ');
linkdaySet(7,29,0,'','鱧の天婦羅');
linkdaySet(7,30,0,'','当日のお楽しみ');
linkdaySet(7,31,0,'','当日のお楽しみ');


linkdaySet(8,2,0,'','<img src="/img/beer.jpg" style="float:left;" width="43" height="58" alt="写真" vspace="5">　生ビール(中)<br />　気の済むまで<br />　どうぞ･･･');
linkdaySet(8,3,0,'','牛のタタキ');
linkdaySet(8,4,0,'','豚ヒレの串カツ(3本)');
linkdaySet(8,5,0,'','生しらす');
linkdaySet(8,6,0,'','当日のお楽しみ');
linkdaySet(8,7,0,'','当日のお楽しみ');
linkdaySet(8,9,0,'','枝豆とｺﾛｺﾛﾎﾟﾃﾄ<br />ﾋﾞｰﾙが進みます！');
linkdaySet(8,10,0,'','馬刺し<br />人気急上昇中!');
linkdaySet(8,11,0,'','当日のお楽しみ');
linkdaySet(8,12,0,'','ﾋﾟｰﾏﾝ肉詰め');
linkdaySet(8,13,0,'','とんてんぽん<br />豚の天婦羅ﾎﾟﾝ酢');
linkdaySet(8,14,0,'','当日のお楽しみ');
linkdaySet(8,16,0,'','酢豚');
linkdaySet(8,17,0,'','バーベQ串<br />肉、野菜、海鮮');
linkdaySet(8,18,0,'','ﾋﾟﾘ辛韓国風冷奴');
linkdaySet(8,19,0,'','銀ダラ香り焼き');
linkdaySet(8,20,0,'','当日のお楽しみ');
linkdaySet(8,21,0,'','当日のお楽しみ');
linkdaySet(8,23,0,'','鯵のタタキ');
linkdaySet(8,24,0,'','焼鳥3本盛り合わせ');
linkdaySet(8,25,0,'','秋刀魚の塩焼き');
linkdaySet(8,26,0,'','当日のお楽しみ');
linkdaySet(8,27,0,'','帆立のフライ');
linkdaySet(8,28,0,'','カレーコロッケ');
linkdaySet(8,30,0,'','色んなお新香<br />盛り合わせ');
linkdaySet(8,31,0,'','シシャモ春巻き');
//ポップアップウィンドウの幅と高さを指定
winWW = 400;	//幅
winHH = 400;	//高さ
winSCL = "no";	//スクロール [yes, no]

/* ---------- 設定領域 end ---------- */





//リンクの数を取得
linkNum = i;


//最後まで（3ヶ月分）
for(a=0; a<3; a++){

	addNum = a;
	
	if(a == 2){
		addNum = -1;
	}
	
	
	i = 0;
	holiMM = new Array;
	holiDD = new Array;
	holiWEEK = new Array;
	holiDAY = new Array;
	holiTTL = new Array;
	
	
	//現在の日付を取得
	nowDate = new Date();
	theYear = nowDate.getFullYear();
	theMonth = nowDate.getMonth() + addNum;
	theDate = nowDate.getDate();
	theDay = nowDate.getDay();
	
	if(theMonth >= 12){
		theYear++;
		theMonth = 0;
	} else if(theMonth <= -1){
		theYear--;
		theMonth = 11;
	}
	
	
	//月の日数取得
	monNum = new Date(theYear, theMonth + 1, 0).getDate();
	
	//1日の曜日を取得
	firstDay = new Date(theYear, theMonth, 1).getDay();
	
	//月の週を取得
	theWeek = Math.ceil((monNum + firstDay) / 7);
	
	
	//祝日を設定
	holidaySet(1,1,0,0,'元旦');
	holidaySet(1,0,2,1,'成人の日');
	holidaySet(2,11,0,0,'建国記念の日');
	
	if(theYear%4 == 0 || theYear%4 == 1){
		holidaySet(3,20,0,0,'春分の日');
	}else{
		holidaySet(3,21,0,0,'春分の日');
	}
	
	holidaySet(4,29,0,0,'昭和の日');
	holidaySet(5,3,0,0,'憲法記念日');
	holidaySet(5,4,0,0,'みどりの日');
	holidaySet(5,5,0,0,'こどもの日');
	holidaySet(7,0,3,1,'海の日');
	holidaySet(9,0,3,1,'敬老の日');
	
	if(theYear >= 2012 && theYear <= 2044 && theYear%4 == 0){
		holidaySet(9,22,0,0,'秋分の日');
	}else{
		holidaySet(9,23,0,0,'秋分の日');
	}
	
	holidaySet(10,0,2,1,'体育の日');
	holidaySet(11,3,0,0,'文化の日');
	holidaySet(11,23,0,0,'勤労感謝の日');
	holidaySet(12,23,0,0,'天皇誕生日');
	
	//祝日の数を取得
	holiNum = i;


	if(a == 0){
		ltBtn = '<a href="javascript:showHide(\'ca2\',\'ca0\'); void(0);">＜</a>';
		rtBtn = '<a href="javascript:showHide(\'ca1\',\'ca0\'); void(0);">＞</a>';
	} else if(a == 1) {
		ltBtn = '<a href="javascript:showHide(\'ca0\',\'ca1\'); void(0);">＜</a>';
		rtBtn = '&nbsp;';
	} else if(a == 2) {
		ltBtn = '&nbsp;';
		rtBtn = '<a href="javascript:showHide(\'ca0\',\'ca2\'); void(0);">＞</a>';
	}
	
	
	//カレンダー表示
	document.write('<div id="ca' + a + '" class="tbView">');
	document.write('<table class="calTable">');
	document.write('<tr>');
	document.write('<td class="btn">' + ltBtn + '</td>');
	document.write('<td colspan="5" class="mon"><span class="yView">' + theYear + '年</span>&nbsp;' + (theMonth + 1) + '月&nbsp;</td>');
	document.write('<td class="btn">' + rtBtn + '</td>');
	document.write('</tr>');
	document.write('<tr>');
	document.write('<th>SUN</th>');
	document.write('<th>MON</th>');
	document.write('<th>TUE</th>');
	document.write('<th>WED</th>');
	document.write('<th>THU</th>');
	document.write('<th>FRI</th>');
	document.write('<th>SAT</th>');
	document.write('</tr>');
	
	
	//重なり順用
	zNum = 32;

	dateNum = 0;
	subHoli = "off"
	nationHoli = "off";
	weekSun = 0;
	weekMon = 0;
	weekTue = 0;
	weekWed = 0;
	weekThu = 0;
	weekFri = 0;
	weekSat = 0;
	weekNum = new Array;
	for(i=0; i<=6; i++){
		weekNum[i] = 0;
	}
	
	for(i=0; i<theWeek; i++){
	
		document.write('<tr>');
	
		for(j=0; j<7; j++){
	
			document.write('<td');
	
			if(i == 0 && j == firstDay){
				dateNum++;
			}
	
			holiMMDDCk = "off";
			for(k=0; k<holiNum; k++){
	
				holiMMCk = "off";
				holiDDCk = "off";
				if((theMonth + 1) == holiMM[k]){
					holiMMCk = "on";
				}
	
				if(holiMMCk == "on" && dateNum != 0 && holiDD[k] == 0 && holiWEEK[k] - 1 == weekNum[holiDAY[k]] && holiDAY[k] == j){
					holiDDCk = "on";
	
					if(dateNum != 0 && holiDD[k + 1] == 0 && holiWEEK[k + 1] - 1 == weekNum[holiDAY[k + 1]] && holiDAY[k + 1] == j + 2){
						nationHoli = "on";
					}else if(dateNum != 0 && holiDD[k + 1] == dateNum + 2 && holiWEEK[k + 1] == 0 && holiDAY[k + 1] == 0){
						nationHoli = "on";
					}
	
				}else if(holiMMCk == "on" && dateNum != 0 && holiDD[k] == dateNum && holiWEEK[k] == 0 && holiDAY[k] == 0){
					holiDDCk = "on";
	
					if(dateNum != 0 && holiDD[k + 1] == 0 && holiWEEK[k + 1] - 1 == weekNum[holiDAY[k + 1]] && holiDAY[k + 1] == j + 2){
						nationHoli = "on";
					}else if(dateNum != 0 && holiDD[k + 1] == dateNum + 2 && holiWEEK[k + 1] == 0 && holiDAY[k + 1] == 0){
						nationHoli = "on";
					}
	
				}
	
				if(holiMMCk == "on" && holiDDCk == "on"){
					holiMMDDCk = "on";
					viewTtl = holiTTL[k];
				}
	
			}
	
			if(holiMMDDCk == "on"){
				if(dateNum == theDate && theMonth == nowDate.getMonth()){
					document.write(' class="sun today" title="' + viewTtl + '"');
				}else{
					document.write(' class="sun" title="' + viewTtl + '"');
				}
	
				if(j == 0){
					subHoli = "on";
				}
	
			}else if(nationHoli == "on"){
				if(dateNum == theDate && theMonth == nowDate.getMonth()){
					document.write(' class="sun today" title="国民の休日"');
				}else{
					document.write(' class="sun" title="国民の休日"');
				}
	
				nationHoli = "off";
		
			}else if(subHoli == "on"){
				if(dateNum == theDate && theMonth == nowDate.getMonth()){
					document.write(' class="sun today" title="振替休日"');
				}else{
					document.write(' class="sun" title="振替休日"');
				}
	
				subHoli = "off";
		
			}else if(j == 0){
				if(dateNum == theDate && theMonth == nowDate.getMonth()){
					document.write(' class="sun today"');
				}else{
					document.write(' class="sun"');
				}
		
			}else if(j == 6){
				if(dateNum == theDate && theMonth == nowDate.getMonth()){
					document.write(' class="sat today"');
				}else{
					document.write(' class="sat"');
				}
	
			}else if(dateNum == theDate && theMonth == nowDate.getMonth()){
				document.write(' class="today"');
			}
	
			document.write('>');


			if((i == 0 && j < firstDay) || dateNum > monNum){
				document.write('&nbsp;');

			}else{

				aObj = "";
				if(this['link' + (theMonth + 1) + 'MM']['ok'] == "ok" && this['link' + (theMonth + 1) + 'MM']['d' + dateNum]){
					document.write('<span style="position:relative; display:block; z-index:' + zNum-- + ';"><span id="d' + (theMonth + 1) + dateNum + '"></span><a href="javascript:linkGo(\'' + (theMonth + 1) + '\',\'' + dateNum + '\'); void(0);" onmouseover="showTtl(\'' + (theMonth + 1) + '\',\'' + dateNum + '\')"  onmouseout="hideTtl(\'' + (theMonth + 1) + '\',\'' + dateNum + '\')" class="linkArea">');
					aObj = "on";
				}

				document.write(dateNum);

				if(aObj == "on"){
					document.write('</a></span>');
					aObj = "";
				}

				dateNum++;

				switch(j){
					case 0: weekNum[0] = ++weekSun; break;
					case 1: weekNum[1] = ++weekMon; break;
					case 2: weekNum[2] = ++weekTue; break;
					case 3: weekNum[3] = ++weekWed; break;
					case 4: weekNum[4] = ++weekThu; break;
					case 5: weekNum[5] = ++weekFri; break;
					case 6: weekNum[6] = ++weekSat; break;
				}
			}
	
			document.write('</td>');
		}
	
		document.write('</tr>');
	}
	
	document.write('<tr>');
	document.write('<td colspan="7" class="webJozu"><a href="http://www.web-jozu.com/" target="_blank" title="WEB上手 - JavaScript・PHP・Flashのサンプルや素材集">&copy;WEB上手</a></td>');
	document.write('</tr>');
	document.write('</table>');
	document.write('</div>');


}
//最初から（3ヶ月分）


//可視化
showHide("ca0","ca1");