﻿var Glob_YY=parseInt(new Date().getFullYear());
var Glob_MM=parseInt(new Date().getMonth()+1);
var Glob_DD=parseInt(new Date().getDate());

var Sel_YY=parseInt(new Date().getFullYear());
var Sel_MM=parseInt(new Date().getMonth()+1);
var Sel_DD=parseInt(new Date().getDate());



function shotable(InputName)
{         
        var DateArray=["日","一","二","三","四","五","六"];
        var output=""
        output=output+"<div style='padding:5px;border-top:1px solid #f4f4f4;border-left:1px solid #f4f4f4;'><table style='width:156px;font-size:9pt;cursor:default;border:0px solid #999999;' border='0' cellpadding='0' cellspacing='0'>";
        output=output+"<tr ><td colspan='6' class='Calender_TrTitle'><span ID='_yearUU'>"+Glob_YY+"</span><span ID='_monthUU'>"+Glob_MM+"</span></td><td><span class='Calender_TdOver2' onclick='CloseCalender();'>&nbsp;×&nbsp;</span></td></tr><table>";
        output=output+"<table style='font-size:12px;font-family: \"宋体\", Helvetica, sans-serif;cursor:default;border:0px solid #999999;border-top:1px solid #404040;border-left:1px solid #404040;border-right:1px solid #efefef;border-bottom:1px solid #efefef;' border='1' cellpadding='0' cellspacing='0'>";
        output=output+"<tr align='center'>";
        for(var i=0;i<7;i++)        output=output+"<td class='Calender_TrOver'>"+DateArray[i]+"</td>";
        output=output+"</tr>";
        for(var i=0;i<6;i++){
        output=output+"<tr align='center'>";
                for(var j=0;j<7;j++)        output=output+"<td id='_TD' name='_TD' class='Calender_TdOver' onmouseover='OverBK(this,\""+InputName.name+"\")' msg=''>&nbsp;</td>";
                        output=output+"</tr>";
                } 
        output=output+"</tabe></div>";

  var selectMMInnerHTML = "<select ID=\"_sMonth\" onchange=\"setPan(document.getElementById('_sYear').value,this.value)\" style='width:50px;'>";
  for (var i = 1; i <  13; i++)
  {
    //if (i == Glob_MM)
    if (i == Sel_MM)
       {selectMMInnerHTML += "<option Author=wayx value='" + i + "' selected>" + i + "月" + "</option>\r\n";}
    else {selectMMInnerHTML += "<option Author=wayx value='" + i + "'>" + i + "月" + "</option>\r\n";}
  }
  selectMMInnerHTML += "</select>";
  var selectYYInnerHTML = "<select ID=\"_sYear\"  onchange=\"setPan(this.value,document.getElementById('_sMonth').value)\" style='width:65px;'>";
  for (var i = 1900; i <=  2020; i++)
  {
	if(i == Sel_YY)
	{
		selectYYInnerHTML += "<option Author=wayx value='" + i + "' selected>" + i + "年" + "</option>\r\n";
	}
   // if (i == Glob_YY)
       //{selectYYInnerHTML += "<option Author=wayx value='" + i + "' selected>" + i + "年" + "</option>\r\n";}
    else {selectYYInnerHTML += "<option Author=wayx value='" + i + "'>" + i + "年" + "</option>\r\n";}
  }
  selectYYInnerHTML += "</select>";
        document.getElementById("DateGird_Calender").innerHTML= output;
        document.getElementById("_monthUU").innerHTML= selectMMInnerHTML;
        document.getElementById("_yearUU").innerHTML= selectYYInnerHTML;
        //document.writeln(output);
}
function classGetDate(sName)
{
this.obj=sName || "uncDate";
//alert(Date.parse(this.obj.value));
this.YY=Glob_YY;
this.MM=Glob_MM;
this.DD=Glob_DD;
document.getElementById("DateGird_Calender").style.display="";
//默认显示输入框中的日期
setDefaultPan();
//setPan(this.YY,this.MM);
}        

function GetDay(y,m){
        this.TDate=function(){
                this.DayArray=[];
                for(var i=0;i<42;i++)this.DayArray[i]="&nbsp;";
                for(var i=0;i<new Date(y,m,0).getDate();i++)this.DayArray[i+new Date(y,m-1,1).getDay()]=i+1;
                return this.DayArray;
                }
        return this;
        }

function setPan(YY,MM)
{
var DArray=GetDay(YY,MM).TDate();
var TDArr=document.getElementsByName("_TD");
if (MM<10){var showMM="0"+MM;}else{var showMM=MM;}
for(var i=0;i<TDArr.length;i++){
        if (Glob_DD==DArray[i]&&YY==new Date().getFullYear()&&MM==new Date().getMonth()+1){TDArr[i].className="Calender_TdOut2";}else{TDArr[i].className="Calender_TdOver"}
        TDArr[i].innerHTML=DArray[i]; 
        if (DArray[i]<10){var showDD="0"+DArray[i];}else{var showDD=DArray[i];}
        TDArr[i].msg=YY+"-"+showMM+"-"+showDD;
        }
}

function setDefaultPan()
{
if(Sel_YY == "")
{
	setPan(Glob_YY,Glob_MM);
	return;
}

var DArray=GetDay(Sel_YY,Sel_MM).TDate();
var TDArr=document.getElementsByName("_TD");
if (Sel_MM<10){var showMM="0"+Sel_MM;}else{var showMM=Sel_MM;}
for(var i=0;i<TDArr.length;i++){
        if (Sel_DD==DArray[i]){TDArr[i].className="Calender_TdOut";}
        else if(Glob_DD==DArray[i]&&Sel_YY==new Date().getFullYear()&&Sel_MM==new Date().getMonth()+1){TDArr[i].className="Calender_TdOut2";}
        else{TDArr[i].className="Calender_TdOver"}
        TDArr[i].innerHTML=DArray[i]; 
        if (DArray[i]<10){var showDD="0"+DArray[i];}else{var showDD=DArray[i];}
        TDArr[i].msg=Sel_YY+"-"+showMM+"-"+showDD;
        }
}



        function PopCalender(sName,objLeftWidth)
        {
        var dateGirdObj=document.getElementById("DateGird_Calender");
        var _SelectDate = sName.value;
        if(_SelectDate!="")
        {
			Sel_YY=parseInt(_SelectDate.substr(0,4),10);
			
			Sel_MM=parseInt(_SelectDate.substr(5,2),10);
			
			Sel_DD=parseInt(_SelectDate.substr(8,2),10);
        }
 
        //var i= sName.style.top
				var offsetLet = 0;
				if( objLeftWidth != null && objLeftWidth.length != 0 )
				{
							offsetLet = objLeftWidth;
				}
				
        dateGirdObj.style.top=cmGetY(sName)+20;
        dateGirdObj.style.left=cmGetX(sName) + offsetLet;
        shotable(sName);
        classGetDate(sName);
        }
        function OverBK(t,m){
                
                if(t.className!="Calender_TdOut" && t.className!="Calender_TdOut2"){
                        t.onmouseout=function(){t.className="Calender_TdOver";}
                }
                if(t.innerHTML!="&nbsp;" &&t.className!="Calender_TdOut2")t.className="Calender_TdOut";
                t.onclick=function(){
                        if (t.innerHTML!="&nbsp;"){//alert(t.innerHTML);
                                document.getElementById(m).value=t.msg;
                                t.className="Calender_TdOver";
                                document.getElementById("DateGird_Calender").style.display="none";
                        }
                }
                
        }



function cmGetX (obj){var x = 0;do{x += obj.offsetLeft;obj = obj.offsetParent;}while(obj);return x;} 
function cmGetY (obj){var y = 0;do{y += obj.offsetTop;obj = obj.offsetParent;}while(obj);return y;}

function CloseCalender()
{
	document.getElementById("DateGird_Calender").style.display="none";
}
