/****************************************************
                        日历 
****************************************************/
var MonthDNum=new Array(0,31,28,31,30,31,30,31,31,30,31,30,31);
var MonthText=new Array("","一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月");
document.write('<iframe style="position:absolute;width:205px;z-index:10;display:none;" id="divCalendar" frameborder="0" scrolling="no"></iframe>')

function IsLeapYear(y){
if(0==y%4&&((y%100!=0)||(y%400==0))){return true;}
else{return false;}
}

function Calendar_Modif(y,m,d)
{
	if(m<1){m=12;y=y-1;}
	if(m>12){m=1;y=y+1;}
	var num=(IsLeapYear(y)&&m==2)?MonthDNum[m]+1:MonthDNum[m];
	if(d>num){d=num;}
	Calendar_obj.value=y+'-'+m+'-'+d;
	Calendar_Show(y,m,d)
}

function Calendar_Show(year,month,day)
{
var script='script';
var content='<meta http-equiv="Content-Type" content="text/html; charset=gb2312"><style type="text/css">td {font-family: "Verdana", "Arial";font-size: 12px;cursor: default;}</style>'+
'<'+script+'>'+
'function Calendar_mover(str)'+
'{var obj=window.event.srcElement;'+
'if(obj.tagName=="TD"&&obj.innerHTML!="&nbsp;"&&obj.bgColor==""){Calendar_Mbgcolor(str,obj,1);}}'+

'function Calendar_mout(str)'+
'{var obj=window.event.srcElement;'+
'if(obj.tagName=="TD"&&obj.innerHTML!="&nbsp;"&&obj.bgColor!="#ffffff"){Calendar_Mbgcolor(str,obj,0);}}'+

'function Calendar_Mbgcolor(str,obj,n)'+
'{switch(str){'+
'	case "day":obj.borderColor=(n)?"#666666":"";'+
'	break;'+
'	case "tool":obj.borderColor=(n)?"#2E3665":"";obj.bgColor=(n)?"#979FCE":"";'+
'	break;'+
'}}</'+script+'><body leftmargin="0" topmargin="0">'; 

content+='<table width="205" border="1" cellpadding="1" cellspacing="0" bgcolor="#FFFFFF" bordercolor="#FFFFFF" style="border: 1px solid #6A84C8;">'+
'  <tr bgcolor="#DBE9F7" align="center" height="20">'+
'    <td bgcolor="#ffffff">&nbsp;</td>'+
'    <td colspan="5" bgcolor="#ffffff">'+year+'年 '+MonthText[month]+'</td>'+
'    <td onmouseover="Calendar_mover(\'tool\');" onmouseout="Calendar_mout(\'tool\');" onclick="parent.Calendar_hide();">×</td>'+
'  </tr>'+
'  <tr height="20" bgcolor="#5563B0" bordercolor="#5563B0" style="color:#ffffff" onmouseover="Calendar_mover(\'tool\');" onmouseout="Calendar_mout(\'tool\');" align="center">'+
'    <td onclick="parent.Calendar_Modif('+(year-1)+','+month+','+day+')">&laquo;</td>'+
'    <td onclick="parent.Calendar_Modif('+year+','+(month-1)+','+day+')">&#8249;</td>'+
'    <td colspan="3">选择本日</td>'+
'    <td onclick="parent.Calendar_Modif('+year+','+(month+1)+','+day+')">&#8250;</td>'+
'    <td onclick="parent.Calendar_Modif('+(year+1)+','+month+','+day+')">&raquo;</td>'+
'  </tr>'+
'  <tr height="20" bordercolor="#CAD3E8" bgcolor="#CAD3E8" align="center">'+
'    <td width="27"><font color="#FF3300">日</td>'+
'    <td width="27">一</td>'+
'    <td width="27">二</td>'+
'    <td width="27">三</td>'+
'    <td width="27">四</td>'+
'    <td width="27">五</td>'+
'    <td width="27"><font color="#FF3300">六</td>'+
'  </tr>'+
'  <tr><td height="3" colspan="7" bgcolor="#000000"></td></tr>';

var num=(IsLeapYear(year)&&month==2)?MonthDNum[month]+1:MonthDNum[month];
var date=new Date(year,month-1,1)
var start=date.getDay();
var date=null;
var Trn=Math.ceil((num+start)/7);
var property='';

var DayNum=1;
for(tr=1;tr<=Trn;tr++)
{
	content+='<tr bgcolor="#F3F2F9" bordercolor="#F3F2F9" onmouseover="Calendar_mover(\'day\');" onmouseout="Calendar_mout(\'day\');" align="center">';
	for(td=1;td<=7;td++){
		if((td<=start&&DayNum==1)||DayNum>num){content+='<td>&nbsp;</td>';}
		else
		{
		if(day==DayNum){property=' bordercolor="#333333" bgcolor="#ffffff"';}
		if(td==1||td==7){property+=' style="color:#ff0000"';}
		content+='<td'+property+' onclick="parent.Calendar_GetDate('+year+','+month+','+DayNum+')">'+DayNum+'</td>';
		DayNum++;}
		property='';
	}
	content+='</tr>';
}
content+='</table>';
divCalendar.document.open()
divCalendar.document.write(content);
divCalendar.document.close()
document.getElementById('divCalendar').style.height=65+18*Trn;
}

var Calendar_obj;
function Calendar(obj)
{	

var p=Calendar_obj=document.getElementById(obj);
	
	var re=/\d{4}-\d{1,2}-\d{1,2}/;
	var arr,Sdate;
	arr=re.exec(Calendar_obj.value);
	if(arr!=null){Sdate=Calendar_obj.value;}
	else{var mydate=new Date();
	Sdate=mydate.getYear()+'-'+(mydate.getMonth()+1)+'-'+mydate.getDate()}
	
	Sdate=Sdate.split("-");
	Calendar_Show(parseInt(Sdate[0]),parseInt(Sdate[1]),parseInt(Sdate[2]));
	var dF=document.getElementById('divCalendar');
	var eT=0,eL=0,eH=0,dH=0,sT=0,eP=p
	while(p&&p.tagName!="BODY"){
	eT+=p.offsetTop;
	eL+=p.offsetLeft;
	p=p.offsetParent;
	}
	var eH=eP.offsetHeight;
	var dH=dF.style.pixelHeight;
	var sT=document.body.scrollTop;
	dF.style.left=eL;
	if(eT-dH>=sT&&eT+eH+dH>document.body.clientHeight+sT) dF.style.top=eT-dH;
	else dF.style.top=eT+eH;
	setTimeout("document.getElementById('divCalendar').style.display=''",10);
}

function Calendar_GetDate(y,m,d)
{Calendar_obj.value=y+'-'+m+'-'+d;
Calendar_hide();}


function Calendar_hide()
{
document.getElementById("divCalendar").style.display="none";
}
