//行事曆程式碼
//共有MonthDays,isHZ_Time,WhogetDate 3個全變數--不可重複
//共有Date_panel,pan_dd,HZ_Year,HZ_Month,HZ_Day  5個物件名--不可重複
var MonthDays=new Array(31,28,31,30,31,30,31,31,30,31,30,31);
var isHZ_Time;
var WhogetDate;

document.write('<span id="Date_panel"  class="drag" style="position:absolute;z-index:100;background-color: DDDDDD; text-align: center; border-top-width: 6px; border-right-width: 6px; border-bottom-width: 6px; border-left-width: 6px;border-style: groove;display:none;width:200;"></span>');

function HZ_getDateFront4_0(obj)
{ HZ_defDate4_0(document.all(obj.sourceIndex-1));
}
function HZ_getDateTimeFront4_0(obj)
{ HZ_defDateTime4_0(document.all(obj.sourceIndex-1));
}

function HZ_defDate4_0(obj)
{HZ_getDate4_0(obj);
}

function HZ_defDateTime4_0(obj)
{HZ_getDate4_0(obj,null,null,null,null,null,'yes');
}

function HZ_getDate4_0(obj,sy,ey,defy,defm,defd,isTime,defh,defmin) //-----傳回所選的日期給觸發它的物件(該物件需有value成員)
{ WhogetDate=obj;
  Date_panel.style.display='';
  show_date_point(Date_panel);
  //HZ_Date4_init(Date_panel,1990,2003,1998,2,16,'yes',16,38); 
  HZ_Date4_init(Date_panel,sy,ey,defy,defm,defd,isTime,defh,defmin);
}

function show_date_point(obj)
{ 
  var hx=document.body.clientWidth-event.clientX;
  var hy=document.body.clientHeight-event.clientY;
  var px=event.clientX+document.body.scrollLeft;
  var py=event.clientY+document.body.scrollTop;
  if(hx<200)px-=(200-hx);
  if(hy<220)py-=(220-hy);
  obj.style.pixelLeft=px+20;
  obj.style.pixelTop=py-20;
}
function toDatedefault(sy,ey,defy,defm,defd,defh,defmin)//------jscript變數居然不能傳址，所以沒用
{ var d=new Date();
  if(sy==null||ey==null){sy=d.getFullYear()-5;ey=d.getFullYear()+5;}
  if(defy==null)defy=d.getFullYear();
  if(defm==null)defm=d.getMonth();
  if(defd=null)defd=d.getDate();
  if(defh=null)defh=d.getHours();
  if(defmin=null)defmin=d.getMinutes();
  
}
function HZ_Date4_init(obj,sy,ey,defy,defm,defd,isTime,defh,defmin) //-----obj指要innerHTML的物件
{ var s1='',s2='';
//------
  var d=new Date();
  if(sy==null||ey==null){sy=d.getFullYear()-5;ey=d.getFullYear()+5;}
  if(defy==null)defy=d.getFullYear();
  if(defm==null)defm=d.getMonth()+1;
  if(defd==null)defd=d.getDate();
  if(defh==null)defh=d.getHours();
  if(defmin==null)defmin=d.getMinutes();
//-----  
  isHZ_Time=isTime;
  s1+='<font size=2>西元<Select Name="HZ_Year" onchange="Createdd(HZ_Year.value,HZ_Month.value,1);">';
  s1+=CreateY(sy,ey,defy);
  s1+='</Select>年';
  s1+='<Select Name="HZ_Month" onchange="Createdd(HZ_Year.value,HZ_Month.value,1);">';
  s1+=CreateM(defm);
  s1+='</Select>月<BR>';
  s1+='<input type="hidden" name="HZ_Day" value="'+defd+'">';
  s1+='<span id="pan_dd" style="cursor:default">'; 
  s1+='</span></font>';
  obj.innerHTML=s1;

  Createdd(defy,defm-1,defd);
  
  if(isTime=='yes') obj.innerHTML+=CreateTime(defh,defmin);
  //s2+='<br>';
  s2+='<a href="javascript:displaynone(Date_panel);"><font size=2>關閉</font></a>  '
  s2+='<a href="javascript:HZ_Date4_result();"><font size=2>確定</font></a>'
  obj.innerHTML+=s2;
}
function CreateY(sy,ey,defy)
{var str='';
 var i=0;
 var str1='';
 for(i=sy;i<=ey;i++)
 { str1=defy==i?'selected':'';
   str+='<option value="'+i+'"'+str1+'>'+i;
 }
 return str;
}
function CreateM(defm)
{var str='';
 var i=0;
 var str1='';
 for(i=1;i<=12;i++)
 { str1=defm==i?'selected':'';
   str+='<option value="'+(i-1)+'"'+str1+'>'+i;
 }
 return str;
}

function CreateTime(defhou,defmin)
{ var s1='';
  s1+='<select name="HZ_Hour">';
  s1+=CreateHour(defhou);
  s1+='</select>';
  s1+='<select name="HZ_Min">';
  s1+=CreateMin(defmin);
  s1+='</select>';
  return s1;
}
function CreateHour(defhour)
{ var s1='',s2='';
  var i=0;
  for(i=0;i<24;i++)
  { s2=defhour==i?'selected':'';
    s1+='<option value="'+i+'"'+s2+'>'+i+'時';
  }
  return s1;
}
function CreateMin(defmin)
{ var s1='',s2='';
  var i=0;
  for(i=0;i<60;i++)
  { s2=defmin==i?'selected':'';
    s1+='<option value="'+i+'"'+s2+'>'+i+'分';
  }
  return s1;
}
function isDate_MouseOver(obj)
{ if(obj.className=='dateclick') return false;
  obj.className='datemouseover';
}
function isDate_Click(obj)
{ var obj_id=obj.id;
  var i=0;
  while(window[obj_id].length>i)
  { 
   window[obj_id][i].className='';
   i++;
  }
 obj.className='dateclick';
 HZ_Day.value=obj.value;
}
function isDate_MouseOut(obj)
{ if(obj.className=='dateclick') return false;
  obj.className='';
}
function Daydefault(defd,dd)
{ HZ_Day.value=defd;
  return defd==dd?' class="dateclick" ':'';
}
function Createdd(yyyy,mm,defd)
  {
    var newdate=new Date(yyyy,mm,1);
    var weekday=newdate.getDay();
    var dd=1;
	var i,j;
	var s1='';
    if(yyyy%4==0||(yyyy%100==0 && yyyy%400==0))
    {
      MonthDays[1]=29;
    }
    else MonthDays[1]=28;
	
 
    //setyd();

    s1+='<table width="100%"  border="0" cellpadding="3" cellspacing="1" class="fix" >'   ;
    s1+='<tr bgcolor=CCCCCC><td><font color=red size=2>日</font></td>';
    s1+='<td><font size=2>一</font></td><td><font size=2>二</font></td><td><font size=2>三</font></td><td><font size=2>四</font></td><td><font size=2>五</font></td><td><font size=2>六</font></td></tr>';
  
    for(j=0;j<6;j++)
    {  //alert(dd+'>'+MonthDays[mm]);
       if(dd>MonthDays[mm]) break;
       s1+='<tr bgcolor=white>';
	   
       for(i=0;i<=6;i++)
       { 
         if(dd>MonthDays[mm])
         {
            for(k=i;k<=6;k++)
            {
               s1+='<td>　</td>';
            }
            break;
          }
       //   s1+='<td>'
          if(j==0 && i<weekday)
          {
            s1+='<td>　';
          }
          else 
          {
            s1+='<td id="HZ_dd" value="'+dd+'" onmouseover="isDate_MouseOver(this)" onmouseout="isDate_MouseOut(this)" onclick="isDate_Click(this);"'+Daydefault(defd,dd)+'><font size=2>';
			if(i==0) s1+='<font color=red size=2>';
            if(i==6) s1+='<font color=green size=2>';
            s1+=dd   ;
            s1+='</font></td>';
            dd=dd+1;
          }
       }
       s1+='</tr>';
    }
    s1+='</table>';
    //s1+='<a href="javascript:HZ_Date4_result();">確定</a>  '
    //s1+='<a href="javascript:displaynone(Date_panel);">關閉</a>'
    
   pan_dd.innerHTML='';
   pan_dd.innerHTML+=s1;
   
  }
function HZ_Date4_result()
{ var s1='',s2='';
  s1=HZ_Year.value+'-'+(parseInt(HZ_Month.value)+1)+'-'+HZ_Day.value;
  if(isHZ_Time=='yes')
    s2=' '+HZ_Hour.value+':'+HZ_Min.value;
  WhogetDate.value=s1+s2;
  displaynone(Date_panel);
}
function displaynone(obj)
{Date_panel.style.cursor='default';
 obj.style.display='none';
}