
function ShowCalender(nYear, nMonth,linkurl){

//nYear 年
//nMonth 月

var strCalString='';
var dtCal = new Date;
var strYear;
var strMonth;
var strDate;
var nRemain;
var tmpLastMonth;
var tmpLastYear;
var tmpNextMonth;
var tmpNextYear;
var strDay = new Array("日","月","火","水","木","金","土");
var nMonthCount = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

if (nYear<1000){nYear+=1900;}
if (nMonth>13){nYear+=1;nMonth=1;}

//年月日を取得
strYear = nYear;	//年度
strMonth = nMonth	//月

switch (strMonth+1){

	case 1:
		var holyday = new Array(0,1,2,3,4,9);
	break;

	case 2:
		var holyday = new Array(0,11);
	break;

	case 3:
		var holyday = new Array(0,20);
	break;

	case 4:
		var holyday = new Array(0,29);
	break;

	case 5:
		var holyday = new Array(0,3,4,5);
	break;

	case 6:
		var holyday = new Array(0);
	break;

	case 7:
		var holyday = new Array(0,18);
	break;

	case 8:
		var holyday = new Array(0,12,15,16);
	break;

	case 9:
		var holyday = new Array(0,19,23);
	break;

	case 10:
		var holyday = new Array(0,10);
	break;

	case 11:
		var holyday = new Array(0,3,23);
	break;

	case 12:
		var holyday = new Array(0,23,29,30,31);
	break;

	default:
		var holyday = new Array(0);
	break;

}


//表示のための準備
dtCal.setYear(strYear);
dtCal.setDate(1);
dtCal.setMonth(strMonth);
strTodaysMonth = dtCal.getMonth()+1;
myToday = myDate.getDate();
myMonth = myDate.getMonth();
var nDayCount = nMonthCount[strMonth];
var weekcount=0;

if ((strMonth == 1)&&(((strYear%4 == 0)&&(strYear%100 != 0))||(strYear%400 == 0))){nDayCount = 29;}


switch (strMonth+1){

	case 1:
		var tmpLastMonth=11;
		var tmpLastYear=nYear-1;
		var tmpNextMonth=strMonth+1;
		var tmpNextYear=nYear;
	break;

	case 12:
		var tmpNextMonth=0;
		var tmpNextYear=nYear+1;
		var tmpLastMonth=strMonth-1;
		var tmpLastYear=nYear;
	break;

	default:
		var tmpLastMonth=strMonth-1;
		var tmpLastYear=nYear;
		var tmpNextMonth=strMonth+1;
		var tmpNextYear=nYear;
	break;

}

var LastMonth='<a href="javascript:void(0);" onclick="reWriteCalender('+tmpLastYear+','+tmpLastMonth+');">≪</a>';
var NextMonth='<a href="javascript:void(0);" onclick="reWriteCalender('+tmpNextYear+','+tmpNextMonth+');">≫</a>';

//alert(year+'/'+month);
//nYear=1;nMonth=1;}
//NextMonth='';





//ここから表示

strCalString = '<div id="Calender">';
strCalString = strCalString + '<table class="cal" summary="営業カレンダー">';

//年月を表示

strCalString = strCalString + '<tr><td class="month">'+LastMonth+'</td><td colspan="5" class="month">'+strYear+ '年'+ strTodaysMonth+ '月</td><td class="month">'+NextMonth+'</td></tr>';

//<td class="month">'+LastMonth+'</td>'
//<td class="month">'+NextMonth+'</td>
//strCalString = strCalString + '<tr><td colspan="5" class="month">'+LastMonth+strYear+ '年'+ strTodaysMonth+ '月</td></tr>';

//strCalString = strCalString + '<tr><td colspan="7" class="month">'+LastMonth+strYear+ '年'+ strTodaysMonth+ '月</td></tr>';
//一行目は曜日

strCalString = strCalString + '<tr><td class="week Sun">日</td><td class="week">月</td><td class="week">火</td><td class="week">水</td><td class="week">木</td><td class="week">金</td><td class="week Sat">土</td></tr>'+"\n";


//ブランクを挿入
for(nLoop = 0; nLoop < dtCal.getDay(); nLoop++){strCalString = strCalString + '<td>&nbsp;</td>';}

//日付を挿入
for(nLoop = 0; nLoop < nDayCount; nLoop++){

	CSS='';

	if(dtCal.getDate() > nLoop){

		for(holydaycount = 0; holydaycount < holyday.length; holydaycount++){
			//休日のCSS
			if (dtCal.getDate() == holyday[holydaycount]){CSS="holiday";}
		}

		if (dtCal.getDay() == 0){strCalString = strCalString + '<tr>';}

		//第二土曜日
		//if( weekcount==0 & dtCal.getDay()==6){bgcolor='#ffabab';};
		//if(weekcount==3 & dtCal.getDay()==6 & CSS==''){CSS='Sat';};

		if(weekcount!=3 & dtCal.getDay()==6 & CSS==''){CSS='Sat';};

		if (dtCal.getDay()==0 & CSS==''){CSS="Sun";}

		if (dtCal.getDay() != 7){
			filename='';
			tmp=dtCal.getDate();
			//if (tmp < 10 ){filename = '&nbsp;';}

			if(CSS!==''){
				CSSTAG=' class="' + CSS+'"';
				CSS=='';
			}else{
				CSSTAG='';
				CSS=='';
			}

			if(dtCal.getDate()==myToday && month==myMonth){
				strCalString = strCalString + '<td'+CSSTAG+'><blink><b>'+dtCal.getDate()+"</b></blink></td>";
			}else{
				strCalString = strCalString + '<td'+CSSTAG+'>'+dtCal.getDate()+"</td>";
			}

//			strCalString = strCalString + '<td class="' + CSS +'">'+dtCal.getDate()+"</td>";
//			strCalString = strCalString + '<TD class="' + CSS +'">'+ weekcount + ':' + dtCal.getDay()+"</td>";
		}

		if (dtCal.getDay() == 6){
			weekcount = weekcount+1;
			strCalString = strCalString + "</tr>\n";
		}
	}

	dtCal.setDate(dtCal.getDate()+1);
	nRemain=7-dtCal.getDay();
}


//for (tmp=dtCal.getDay();tmp<7;++tmp){strCalString = strCalString + '<td>-</td>';}

strCalString = strCalString + "</tr></table>";
strCalString = strCalString + "</div>";

//document.write(strCalString);
return strCalString;

}

function ShowStart(){
	var nYearTemp  = document.frmSample.lstYear.value;
	var nMonthTemp = document.frmSample.lstMonth.value;
	var nlinkurl   = document.frmSample.lstlinkurl.value;
	divCalender.innerHTML = ShowCalender(nYearTemp, nMonthTemp,nlinkurl);
}


function putcalc(){
	myDate	=	new Date();
	year	=	myDate.getYear()
	month	=	myDate.getMonth()
	Calender=ShowCalender(year,month,'Factory');
	document.getElementById('Calender').innerHTML=Calender;
}

function reWriteCalender(year,month){
	Calender=ShowCalender(year,month,'Factory');
	//alert(year+'-'+month);
	document.getElementById('Calender').innerHTML=Calender;
}


