﻿//powered by James power
var wk = new Array(7);
var mm = new Array(12);
wk[0] = '日';
wk[1] = '一';
wk[2] = '二';
wk[3] = '三';
wk[4] = '四';
wk[5] = '五';
wk[6] = '六';

mm[0] = 31;
mm[1] = 28;
mm[2] = 31;
mm[3] = 30;
mm[4] = 31;
mm[5] = 30;
mm[6] = 31;
mm[7] = 31;
mm[8] = 30;
mm[9] = 31;
mm[10] = 30;
mm[11] = 31;

var cDate = new Array(0, 0, 0);
var sDate = new Array(0, 0, 0);

var cdate = new Date();
cDate[0] = cdate.getFullYear();
cDate[1] = cdate.getMonth();
cDate[2] = cdate.getDay();
sDate = cDate;



function calendar(dArr){
	
	var str = '';
	var dArr = dArr;
	
	var y = dArr[0];
	var m = dArr[1];
	var d = dArr[2];

	if (((y % 4 == 0) && !(y % 100 == 0)) || (y % 400 == 0)) {
		mm[1]++; //如果是闰年，2月天数加1
	}


	for(var i=0; i<7; i++){
		str += ('<b>' + this.wk[i] + '</b>');
	}
	
	
	
	var dm = this.mm[m];
	
	var dt = new Date();
	dt.setFullYear(y, m, 1);
	d1 = dt.getDay();
	
	
	var currentDate = Date.parse(this.cdate);
	//alert(currentDate);
	var maxi=dm+d1;
	for(var i=1; i<=42; i++){
		if(i>d1&&i<=maxi){
			
			var cd = i-d1;
			var tDate = new Date();
			tDate.setFullYear(y,m,cd);
			var thisDate = Date.parse(tDate);
			
			str += '<u>';

			if(thisDate >= currentDate)
				str += '<a href="javascript:calendarDate('+y+','+m+','+cd+')">' + cd + '</a>';
			else
				str += cd;
			str += '</u>';

		}else{
			str += ('<u><em>&nbsp;</em></u>');
		}
	}

	var jm=(dm+d1)%7;

	if(jm>0){
		jm = 7-jm;
		for(j=0; j<jm; j++){
			str += ('<u>&nbsp;</u>');
		}
	}
	//alert(str);
	str = '<p><a href="javascript:calendarMonth(-1);" style="margin-left:5px;" class="Mbn" title="上一月">&lt;&lt;</a><em>' + y + '年'+ '' + (m>8?'':'0') + (m+1) + '月</em><a href="javascript:calendarMonth(1);" class="Mbn" title="下一月">&gt;&gt;</a><a href="javascript:closeCal();" class="Mbn" style="margin-left:7px;background:#ddd">&nbsp;×&nbsp;</a></p<p class="c"></p>' + str;

	document.getElementById("calendarBox").innerHTML = '<div>'+str+'</div>';
	//alert('<div>'+str+'</div>');

}
function calendarMonth(m_plus){
	
	if( this.sDate[1] + m_plus > 11 ){
		this.sDate[0]++;
		this.sDate[1] = 0;
	}else if( this.sDate[1] + m_plus < 0 ){
		this.sDate[0]--;
		this.sDate[1] = 11;
	}else{
		this.sDate[1] += m_plus;
	}
	//alert(this.sDate);
	calendar(this.sDate);

}
/*function calendarYear(y_plus){
	this.sDate[0] += y_plus;
	calendar(this.sDate);
}*/
function calendarDate(cy,cm,cd){
	$("t").value = cd+'/'+(cm+1)+'/'+cy;
	$("calendarBox").className = "dno";
}
function calendarDateShow(){
	$("calendarBox").className = "dbl";
}
function closeCal(){
	$("calendarBox").className = "dno";
}
