var Week = new Array('日','月','火','水','木','金','土');
var Days = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
var Holiday = new Object();
Holiday['2009-10-10'] = 'h';
Holiday['2009-10-11'] = 'h';
Holiday['2009-10-17'] = 'h';
Holiday['2009-10-18'] = 'h';
Holiday['2009-10-24'] = 'h';
Holiday['2009-10-25'] = 'h';
Holiday['2009-10-3'] = 'h';
Holiday['2009-10-4'] = 'h';
Holiday['2009-11-14'] = 'h';
Holiday['2009-11-15'] = 'h';
Holiday['2009-11-1'] = 'h';
Holiday['2009-11-21'] = 'h';
Holiday['2009-11-22'] = 'h';
Holiday['2009-11-28'] = 'h';
Holiday['2009-11-29'] = 'h';
Holiday['2009-11-7'] = 'h';
Holiday['2009-11-8'] = 'h';
Holiday['2009-12-12'] = 'h';
Holiday['2009-12-13'] = 'h';
Holiday['2009-12-19'] = 'h';
Holiday['2009-12-20'] = 'h';
Holiday['2009-12-26'] = 'h';
Holiday['2009-12-27'] = 'h';
Holiday['2009-12-31'] = 'h';
Holiday['2009-12-5'] = 'h';
Holiday['2009-12-6'] = 'h';
Holiday['2009-8-15'] = 'h';
Holiday['2009-8-16'] = 'h';
Holiday['2009-8-1'] = 'h';
Holiday['2009-8-22'] = 'h';
Holiday['2009-8-23'] = 'h';
Holiday['2009-8-29'] = 'h';
Holiday['2009-8-2'] = 'h';
Holiday['2009-8-30'] = 'h';
Holiday['2009-8-9'] = 'h';
Holiday['2009-9-12'] = 'h';
Holiday['2009-9-13'] = 'h';
Holiday['2009-9-20'] = 'h';
Holiday['2009-9-26'] = 'h';
Holiday['2009-9-27'] = 'h';
Holiday['2009-9-6'] = 'h';
Holiday['2010-1-10'] = 'h';
Holiday['2010-1-11'] = 'h';
Holiday['2010-1-16'] = 'h';
Holiday['2010-1-17'] = 'h';
Holiday['2010-1-1'] = 'h';
Holiday['2010-1-23'] = 'h';
Holiday['2010-1-24'] = 'h';
Holiday['2010-1-2'] = 'h';
Holiday['2010-1-30'] = 'h';
Holiday['2010-1-31'] = 'h';
Holiday['2010-1-3'] = 'h';
Holiday['2010-1-4'] = 'h';
Holiday['2010-1-9'] = 'h';
Holiday['2010-2-11'] = 'h';
Holiday['2010-2-13'] = 'h';
Holiday['2010-2-14'] = 'h';
Holiday['2010-2-20'] = 'h';
Holiday['2010-2-21'] = 'h';
Holiday['2010-2-27'] = 'h';
Holiday['2010-2-28'] = 'h';
Holiday['2010-2-6'] = 'h';
Holiday['2010-2-7'] = 'h';
Holiday['2010-3-13'] = 'h';
Holiday['2010-3-14'] = 'h';
Holiday['2010-3-20'] = 'h';
Holiday['2010-3-21'] = 'h';
Holiday['2010-3-22'] = 'h';
Holiday['2010-3-27'] = 'h';
Holiday['2010-3-28'] = 'h';
Holiday['2010-3-6'] = 'h';
Holiday['2010-3-7'] = 'h';
Holiday['2010-4-11'] = 'h';
Holiday['2010-4-18'] = 'h';
Holiday['2010-4-25'] = 'h';
Holiday['2010-4-29'] = 'h';
Holiday['2010-4-4'] = 'h';
Holiday['2010-5-15'] = 'h';
Holiday['2010-5-16'] = 'h';
Holiday['2010-5-1'] = 'h';
Holiday['2010-5-22'] = 'h';
Holiday['2010-5-23'] = 'h';
Holiday['2010-5-29'] = 'h';
Holiday['2010-5-2'] = 'h';
Holiday['2010-5-30'] = 'h';
Holiday['2010-5-3'] = 'h';
Holiday['2010-5-4'] = 'h';
Holiday['2010-5-5'] = 'h';
Holiday['2010-5-8'] = 'h';
Holiday['2010-5-9'] = 'h';
Holiday['2010-6-12'] = 'h';
Holiday['2010-6-13'] = 'h';
Holiday['2010-6-19'] = 'h';
Holiday['2010-6-20'] = 'h';
Holiday['2010-6-26'] = 'h';
Holiday['2010-6-27'] = 'h';
Holiday['2010-6-5'] = 'h';
Holiday['2010-6-6'] = 'h';
Holiday['2010-7-10'] = 'h';
Holiday['2010-7-11'] = 'h';
Holiday['2010-7-17'] = 'h';
Holiday['2010-7-18'] = 'h';
Holiday['2010-7-19'] = 'h';
Holiday['2010-7-24'] = 'h';
Holiday['2010-7-25'] = 'h';
Holiday['2010-7-31'] = 'h';
Holiday['2010-7-3'] = 'h';
Holiday['2010-7-4'] = 'h';
Holiday['2010-8-13'] = 'h';
Holiday['2010-8-14'] = 'h';
Holiday['2010-8-15'] = 'h';
Holiday['2010-8-1'] = 'h';
Holiday['2010-8-21'] = 'h';
Holiday['2010-8-22'] = 'h';
Holiday['2010-8-28'] = 'h';
Holiday['2010-8-29'] = 'h';
Holiday['2010-8-7'] = 'h';
Holiday['2010-8-8'] = 'h';
Holiday['2010-9-11'] = 'h';
Holiday['2010-9-12'] = 'h';
Holiday['2010-9-18'] = 'h';
Holiday['2010-9-19'] = 'h';
Holiday['2010-9-20'] = 'h';
Holiday['2010-9-23'] = 'h';
Holiday['2010-9-25'] = 'h';
Holiday['2010-9-26'] = 'h';
Holiday['2010-9-4'] = 'h';
Holiday['2010-9-5'] = 'h';

//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
var css = new Object();
var tdcom = 'width:auto;padding:3px 1px 2px 1px;line-height:120%;text-align:center;vertical-align:middle;border:solid 1px #fafafa;';
css['table']  = ' style="width:180px;border-collapse:collapse;margin:0px;border:solid 0px #cccccc;"';
css['mo']     = ' style="'+tdcom+'font-size:10pt;color:#333333;background-color:#ffffff;"';
css['cap']    = ' style="'+tdcom+'font-size:9pt;color:#ffffff;background-color:#ff8888;"';
css['day']    = ' style="'+tdcom+'font-size:9pt;color:#333333;background-color:#f0f0f0;"';
css['dayb']   = ' style="'+tdcom+'font-size:9pt;color:#333333;background-color:#f0f0f0;font-weight:bolder;"';
css['hol']    = ' style="'+tdcom+'font-size:9pt;color:#336699;background-color:#ff0066;"';
css['holb']   = ' style="'+tdcom+'font-size:9pt;color:#336699;background-color:#ff0066;font-weight:bolder;"';
css['bla']    = ' style="'+tdcom+'font-size:9pt;background-color:#ffffff;font-weight:bolder;"';
css['no']     = ' style="'+tdcom+'font-size:9pt;color:#666666;background-color:#ffffff;"';

//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
var date = new Date();
var yea = date.getFullYear();
var mon = date.getMonth()+1;
booei(yea,mon);
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
function booei(yea,mon){
	var last_m = mon-1;
	var next_m = mon+1;
	var last_y = yea;
	var next_y = yea;
	if(last_m <= 0 ){last_m+=12;last_y--;}
	if(next_m >= 13){next_m-=12;next_y++;}
	uruu(yea);
	var start_week = week_judge(yea,mon,1);
	var last_day = Days[mon-1];
	cale = calendar(yea,mon,start_week,last_day,last_y,last_m,next_y,next_m);
	document.getElementById('booei').innerHTML = cale;
}
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
function calendar(yea,mon,start_week,last_day,last_y,last_m,next_y,next_m){
	var date = new Date();
	var now_ye = date.getFullYear();
	var now_mo = date.getMonth()+1;
	var today  = date.getDate();
	var linkc =  'style="color:#333333;text-decoration:none;"';
	//
	var cale = new String();
	cale += '<table'+css['table']+'>';
	cale += '<tr>';
	cale += '<td colspan="7"'+css['mo']+'>';
	cale += '<a href="javascript:booei('+last_y+','+last_m+');"'+linkc+'>&lt;&lt;</a> &nbsp;';
	cale += yea+'年'+mon+'月 &nbsp;';
	cale += '<a href="javascript:booei('+next_y+','+next_m+');"'+linkc+'>&gt;&gt;</a>';
	cale += '</td>';
	cale += '</tr>';
	for(var w=0;w<7;w++){cale += '<td'+css['cap']+'>'+Week[w]+'</td>';}
	cale += '</tr>';
	var gyo   = Math.floor(last_day/7)+2;
	var start = 0;
	var day   = 1;
	for(var g=0;g<gyo;g++){
		cale += "<tr>";
		for(var w=0;w<7;w++){
			if(start == 0 && w == start_week){start++;}
			if(start == 0 || day > last_day){
				cale += '<td'+css['bla']+'>&nbsp;</td>';
			}else{
				var csw = 'day';
				if(Holiday[yea+'-'+mon+'-'+day]){
					if(yea == now_ye && mon == now_mo && day == today){
						csw = 'holb';
						if(Holiday[yea+'-'+mon+'-'+day] > 0){
							csw += '-'+Holiday[yea+'-'+mon+'-'+day];
						}
					}else{
						csw = 'hol';
						if(Holiday[yea+'-'+mon+'-'+day] > 0){
							csw += '-'+Holiday[yea+'-'+mon+'-'+day];
						}
					}
				}else{
					if(yea == now_ye && mon == now_mo && day == today){
						csw = 'dayb';
					}else{
						csw = 'day';
					}
				}
				cale += '<td'+css[csw]+'>'+day+'</td>';
				day++;
			}
		}
		cale += "</tr>";
		if(day > last_day){break;}
	}
	cale += '<tr>';
	cale += '<td'+css['no']+' colspan="7">';
	cale += '<span style="color:#f0f0f0;background-color:#f0f0f0;width:8px;height:8px;line-height:100%;font-size:9pt;margin:0px;padding:0px;">■</span> &nbsp;営業';cale += '&nbsp;<span style="color:#ff0066;background-color:#ff0066;width:8px;height:8px;line-height:100%;font-size:9pt;margin:0px;padding:0px;">■</span> &nbsp;休業';
	if('' == 1){
		var linkc =  'style="color:#666666;text-decoration:none;"';
		cale += '<p style="font-size:9pt;margin:3px 1px 1px 1px;padding:0px;text-align:center;overflow:hidden;display:block;"><a href="http://sv167.xserver.jp/~takarajima/et-c.com/takarajima/333/cgi-bin/booei/booei.cgi"'+linkc+'>ADMIN</a></p>';
	}
	cale += '</td>';
	cale += '</tr>';
	cale += '</table>';
	return cale;
}
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
function week_judge(yea,mon,day){
	if(mon < 3){
		mon+=12;
		yea--;
	}
	var wn = (yea+Math.floor(yea/4)-Math.floor(yea/100)+Math.floor(yea/400)+Math.floor((13*mon+8)/5)+day)%7;
	return wn;
}
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
function uruu(yea){
	var uruu = 28;
	if((yea % 4 == 0 && yea % 100 != 0) || yea % 400 == 0){
	    uruu = 29;
	}
	Days[1] = uruu;
}
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

