// JScript 文件
var dpcfg = {};
dpcfg.skin = "default";
dpcfg.dateFmt = "%Y-%M-%D";
dpcfg.showTime = true;
dpcfg.highLineWeekDay = true;
dpcfg.minDate = "1900-1-1";
dpcfg.maxDate = "2099-12-30";
dpcfg.errDealMode = 0;
dpcfg.errAlertMsg = "不合法的日期格式或者日期超出限定范围,需要撤销吗?";
dpcfg.aWeekStr = ["日","一","二","三","四","五","六"];
dpcfg.aMonStr = ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一","十二"];
dpcfg.todayStr = "今天";
dpcfg.okStr = "确定";
dpcfg.timeStr = "时间";
dpcfg.monthStr = "月份";
dpcfg.yearStr = "年份";
var $d=null;
function __sb()
{
this.s=new Array();
this.i=0;
this.a=function(t)
{
this.s[this.i++]=t;
};
this.j=function()
{
return this.s.join('');
};
}
function WdatePicker(el,dateFmt,showTime,skin)
{
this.win=window;
this.top=window;
while(this.top.parent.document!=this.top.document&&this.top.parent.document.getElementsByTagName("frameset").length==0)
{
this.top=this.top.parent;
}
this.q=new Date();
this.aa=this.q.getFullYear();
this.p=this.q.getMonth()+1;
this.z=this.q.getDate();
this.be=this.q.getHours();
this.as=this.q.getMinutes();
this.bj=this.q.getSeconds();
this.eCont=(typeof el=='string')?document.getElementById(el):el;
this.dateFmt=(dateFmt==null)?dpcfg.dateFmt:dateFmt;
this.showTime=(showTime!=dpcfg.showTime)?showTime:dpcfg.showTime;
this.skin=(skin==null)?dpcfg.skin:skin;
var c=this.eCont.getAttribute("MINDATE");
if(c==null)
{
c=dpcfg.minDate;
}
if(c.substring(0,1)=='$')
{
c=document.getElementById(c.substring(1));
if(c)
{
if(c.getAttribute("REALVALUE")==null||c.getAttribute("REALVALUE")=="")
{
c=c.value;
}
else
{
c=c.getAttribute("REALVALUE");
}
}
else
{
c=null
};
if(c==null||c=='')
{
c=dpcfg.minDate;
}
}
c=c.replace(/#Today/,this.aa+'/'+this.p+'/'+this.z);
this.minDate=this.aw(c);
c=this.eCont.getAttribute("MAXDATE");
if(c==undefined)
{
c=dpcfg.maxDate;
}
if(c.substring(0,1)=='$')
{
c=document.getElementById(c.substring(1));
if(c)
{
if(c.getAttribute("REALVALUE")==null||c.getAttribute("REALVALUE")=="")
{
c=c.value;
}
else
{
c=c.getAttribute("REALVALUE");
}
}
else
{
c=null
};
if(c==null||c=='')
{
c=dpcfg.maxDate;
}
}
c=c.replace(/#Today/,this.aa+'/'+this.p+'/'+this.z);
this.maxDate=this.aw(c);
if(this.top.document.dateDiv&&this.top.document.dateDiv.obj.eCont==this.eCont)
{
$d=this.top.document.dateDiv;
}
else
{
this.top.document.dateDiv=null;
}
this.cssPath='default/datepicker.css';
this.highLineWeekDay=dpcfg.highLineWeekDay;
this.aWeekStr=dpcfg.aWeekStr;
this.aMonStr=dpcfg.aMonStr;
this.todayStr=dpcfg.todayStr;
this.okStr=dpcfg.okStr;
this.timeStr=dpcfg.timeStr;
this.bo();
this.bc(this.eCont.value,this.dateFmt);
if(this.eCont.value!=''&&this.eCont.getAttribute("REALVALUE")==null&&this.l(this.eCont.value))
{
this.am();
}
this.bt=this.year;
this.bq=this.month;
this.bs=this.date;
if(this.top.document.dateDiv==undefined)
{
this.dd=this.top.document.createElement("DIV");
this.dd.style.cssText='position:absolute;z-index:197;width:180px;';
this.dd.obj=this;
this.dd.className="WdateDiv";
this.dd.innerHTML=this.aq();
var bv=this.top.document.createElement('iframe');
this.dd.ifr=bv;
var w=this.dd.getElementsByTagName('input');
this.dd.mInput=w[0];
this.dd.yInput=w[1];
var ap=this.dd.getElementsByTagName('div');
this.dd.mDiv=ap[2];
this.dd.yDiv=ap[4];
this.dd.dDiv=ap[5];
this.dd.tDiv=ap[6].firstChild;
this.dd.dDiv.innerHTML=this.u();
this.o=function()
{
var evt=$d.obj.top.event;
var k=(evt.which==undefined)?evt.keyCode:evt.which;
if(!((k>=48&&k<=57)||(k>=96&&k<=105)||k==8||k==46||k==37||k==39))
{
evt.returnValue=false;
}
};
this.dd.mInput.attachEvent('onkeydown',this.o);
this.dd.yInput.attachEvent('onkeydown',this.o);
this.dd.yInput.οnblur=function()
{
if(parseInt(this.value)!=$d.obj.year)
{
$d.obj.redraw();
}
this.className='yminput';
};
this.dd.mInput.οnblur=function()
{
if(this.value>12)
{
this.value='12';
}
else if(this.value<1)
{
this.value='1';
}
else if(parseInt(this.value)!=$d.obj.month)
{
$d.obj.redraw();
}
this.className='yminput';
};
this.dd.mInput.οnfοcus=function()
{
this.className='yminputfocus';
this.select();
$d.obj._fillmonth();
$d.mDiv.style.display='block';
};
this.dd.yInput.οnfοcus=function()
{
this.className='yminputfocus';
this.select();
$d.obj._fillyear();
$d.yDiv.style.display='block';
};
this.dd.hhInput=w[2];
this.dd.mmInput=w[4];
this.dd.ssInput=w[6];
this.dd.okInput=w[7];
this.dd.hhInput.οnfοcus=this.dd.mmInput.οnfοcus=this.dd.ssInput.οnfοcus=function()
{
this.select();
$d.obj.currFocus=this;
};
this.dd.hhInput.οnblur=function()
{
if(parseInt(this.value)>23)
{
this.value='23';
}
else if(parseInt(this.value)<0)
{
this.value='0';
}
};
this.dd.mmInput.οnblur=this.dd.ssInput.οnblur=function()
{
if(parseInt(this.value)>59)
{this.value='59';}
else if(parseInt(this.value)<0)
{this.value='0';}
};
this.dd.hhInput.attachEvent('onkeydown',this.o);
this.dd.mmInput.attachEvent('onkeydown',this.o);
this.dd.ssInput.attachEvent('onkeydown',this.o);
var bn=this.dd.getElementsByTagName('button');
this.dd.upButton=bn[0];
this.dd.downButton=bn[1];
this.dd.upButton.οnclick=function()
{
if($d.obj.currFocus==undefined)
{$d.obj.currFocus=$d.mmInput;}
if(($d.obj.currFocus==$d.hhInput&&parseInt($d.obj.currFocus.value)<23)||($d.obj.currFocus!=$d.hhInput&&parseInt($d.obj.currFocus.value)<59))
{$d.obj.currFocus.value=parseInt($d.obj.currFocus.value)+1;}
$d.obj.currFocus.focus();
};
this.dd.downButton.οnclick=function()
{
if($d.obj.currFocus==undefined)
{
$d.obj.currFocus=$d.mmInput;
}
if(parseInt($d.obj.currFocus.value)>0)
{
$d.obj.currFocus.value=parseInt($d.obj.currFocus.value)-1;
}
$d.obj.currFocus.focus();
};
this.top.document.body.insertAdjacentElement('afterBegin',this.dd);
this.top.document.body.insertAdjacentElement('beforeEnd',this.dd.ifr);
this.top.document.dateDiv=this.dd;this.eCont.getValue=function()
{
if(this.value=='')
{
return '';
}
else
{
return this.getAttribute("REALVALUE");
}
};
this.eCont.attachEvent('onkeydown',function()
{
if($d.style.display!='none')
{
var evt=$d.obj.top.event;
var k=(evt.which==undefined)?evt.keyCode:evt.which;
if(k==9)
{evt.returnValue=false;}
}
}
);
}
else
{
this.dd=this.top.document.dateDiv;
this.dd.obj.win=this.win;
this.dd.obj.top=this.top;
this.dd.obj.eCont=this.eCont;
this.dd.obj.showTime=this.showTime;
this.dd.obj.dateFmt=this.dateFmt;
this.dd.style.display='';
this.dd.mInput.value=this.month;
this.dd.yInput.value=this.year;
this.dd.dDiv.innerHTML=this.u();
if(this.showTime)
{
this.dd.tDiv.style.display='block';
this.dd.hhInput.value=this.hour;
this.dd.mmInput.value=this.minute;
this.dd.ssInput.value=this.sec;
}
else
{
this.dd.tDiv.style.display='none';
}
}
this.bm();
this._setOkInput();
var bp=this.eCont.getBoundingClientRect();
var mm=$getAbsM(this.top);
var ar=$getClientWidthHeight(this.top);
var bd=mm.topM+bp.bottom;
var br=mm.leftM+bp.left;
if((bd+parseInt(this.dd.offsetHeight)<(ar.height))||(bd-this.eCont.offsetHeight<this.dd.offsetWidth*0.8))
{
this.dd.style.top=(this.top.document.body.scrollTop+bd+1)+'px';
}
else
{
this.dd.style.top=(this.top.document.body.scrollTop+bd-parseInt(this.dd.offsetHeight)-this.eCont.offsetHeight-3)+'px';
}
this.dd.style.left=-1+this.top.document.body.scrollLeft+Math.min(br,ar.width-parseInt(this.dd.offsetWidth)-5)+'px';
this.dd.ifr.style.cssText='top:'+this.dd.style.top+';left:'+(this.dd.style.left)+';width:'+Math.min(180,(this.dd.offsetWidth-1))+'px;height:'+(this.dd.offsetHeight-1)+'px;position:absolute;z-index:196;overflow:hidden;border:0px;filter:alpha(opacity=0);';
}
WdatePicker.prototype.ba=function()
{
var path='';
var i;
var scripts=document.getElementsByTagName("script");
for(i=0;i<scripts.length;i++)
{
if(scripts[i].src.substring(scripts[i].src.length-14).toLowerCase()=='wdatepicker.js')
{
path=scripts[i].src.substring(0,scripts[i].src.length-14);
break;
}
}
if(path.indexOf('://')==-1)
{
var a=this.top.location.href.toLowerCase();
var b=location.href.toLowerCase();
var al='',bl='',bls='';var j,s='';
for(i=0;i<Math.max(a.length,b.length);i++)
{
if(a.charAt(i)!=b.charAt(i))
{
j=i;
while(a.charAt(j)!='/'){if(j==0){break;}j-=1;}
al=a.substring(j+1,a.length);
al=al.substring(0,al.indexOf('/'));
bl=b.substring(j+1,b.length);
bl=bl.substring(0,bl.indexOf('/'));
break;
}
}
if(al!='')
{
for(i=0;i<al.split('/').length;i++)
{s+="../";}
}
if(bl!='')
{
bls=bl.split('/');
for(i=0;i<bls.length;i++){s+=bls[i]+'/';}
}
path=s+path;
}
this.cssPath=path+this.skin.toLowerCase()+'/datepicker.css';
};
WdatePicker.prototype.bo=function()
{
if(!$d||($d&&$d.obj.skin!=this.skin))
{
if($d){$d.obj.skin=this.skin;}
this.ba();
var ay=true;
for(var i=this.top.document.styleSheets.length-1;i>=0;i--)
{
tempStyle=this.top.document.styleSheets[i];
if(tempStyle.href.substring(tempStyle.href.lastIndexOf('/')+1).toLowerCase()=='datepicker.css')
{
if(tempStyle.href.toLowerCase()==this.cssPath.toLowerCase())
{
ay=false;
tempStyle.disabled=false;continue;
}
else
{
tempStyle.disabled=true;
}
}
}
if(ay)
{
this.top.document.createStyleSheet(this.cssPath);
}
}
};
WdatePicker.prototype.bc=function(str,fmt)
{
this.year=this.month=this.date=this.hour=this.minute=this.sec=-1;
var v=str.split(//W+/);
var f=fmt.match(/%./g);
for(var i=0;i<f.length;i++)
{
if(v[i])
{
if(f[i].toLowerCase()=='%y')
{
this.year=parseInt(v[i],10);
if(isNaN(this.year))
{
this.year=this.aa;
}
}
else if(f[i]=='%M')
{
this.month=parseInt(v[i],10);
if(isNaN(this.month))
{
this.month=this.p;
}
}
else if(f[i].toLowerCase()=='%d')
{
this.date=parseInt(v[i],10);
if(isNaN(this.date))
{
this.date=this.z;
}
}
else if(f[i].toLowerCase()=='%h')
{
this.hour=parseInt(v[i],10);
if(isNaN(this.hour)){this.hour=this.be;}
}
else if(f[i]=='%m')
{
this.minute=parseInt(v[i],10);
if(isNaN(this.minute)){this.minute=this.as;}
}
else if(f[i].toLowerCase()=='%s')
{
this.sec=parseInt(v[i],10);
if(isNaN(this.sec)){this.sec=this.bj;}
}
}
}
if(!this.az(this.year+'-'+this.month+'-'+this.date))
{
this.year=this.aa;
this.month=this.p;
this.date=this.z;
}
if((this.hour<0)||(this.hour>23))
{
this.hour=this.be;
}
if((this.minute<0)||(this.minute>59))
{
this.minute=this.as;
}
if((this.sec<0)||(this.sec>59))
{
this.sec=this.bj;
}
};
WdatePicker.prototype._fillmonth=function()
{
var s=new __sb();
s.a("<table cellspacing=0 cellpadding=2 border=0>");
var i,n=0,v=parseInt(this.dd.mInput.value);
var at=new Array(12);
var t=new Array(12);
for(i=0;i<11;i++)
{
if(i+1==v)
{
n=1;
}
at[i]=this.aMonStr[n+i];
t[i]=n+i+1;
}
this.year=parseInt(this.dd.yInput.value);
var af=this.year==this.minDate.year;
var ae=this.year==this.maxDate.year;
var mmmy97=af&&ae;
var ax=(this.year>this.minDate.year&& this.year<this.maxDate.year);
var ac;
for(i=0;i<6;i++)
{
s.a("<tr><td ");
ac=(ax)||(!mmmy97&&((af&&t[i]>=this.minDate.month)||(ae&& t[i]<=this.maxDate.month)))||(mmmy97&&(t[i]>=this.minDate.month&& t[i]<=this.maxDate.month));
s.a((ac)?"class='Wym' οnmοuseοver=/"this.className='WdayOn'/" οnmοuseοut=/"this.className='Wym'/" οnmοusedοwn=/"$d.mInput.value='"+t[i]+"';$d.mDiv.style.display='none';$d.mInput.blur();/"":"class='Winvalidym'");
s.a(">"+at[i]+"</td>");
if(i==5)
{
break;
};
s.a("<td ");
ac=(ax)||(!mmmy97&&((af&&t[i+6]>=this.minDate.month)||(ae&&t[i+6]<=this.maxDate.month)))||(mmmy97&&(t[i+6]>=this.minDate.month&& t[i+6]<=this.maxDate.month));
s.a((ac)?"class='Wym' οnmοuseοver=/"this.className='WymOn'/" οnmοuseοut=/"this.className='Wym'/" οnmοusedοwn=/"$d.mInput.value='"+t[i+6]+"';$d.mDiv.style.display='none';$d.mInput.blur();/"":"class='Winvalidym'");
s.a(">"+at[i+6]+"</td></tr>");
}
s.a("<td align=center οnmοuseοver=/"this.className='WymOn'/" οnmοuseοut=/"this.className='Wym'/" οnmοusedοwn=/"$d.mDiv.style.display='none';/">×</td</tr>");
s.a("</table>");
this.dd.mDiv.innerHTML=s.j();
};
WdatePicker.prototype._fillyear=function(ao,au)
{
if(ao==null||au==null)
{
var v=parseInt(this.dd.yInput.value);
ao=v-5;
au=v+4;
}
var i;
var a=new Array(au-ao);
for(i=ao;i<=au;i++)
{
a[i-ao]=i;
}
var n=(a.length/2);
var s=new __sb();
var ah;
s.a("<table cellspacing=0 cellpadding=2 border=0>");
for(i=0;i<n;i++)
{
ah=(a[i]>=this.minDate.year&& a[i]<=this.maxDate.year);
s.a("<tr><td ");
s.a((ah)?"class='Wym' οnmοuseοver=/"this.className='WymOn'/" οnmοuseοut=/"this.className='Wym'/" οnmοusedοwn=/"$d.yInput.value='"+a[i]+"';$d.yDiv.style.display='none';$d.yInput.blur();/"":"class='Winvalidym'");
s.a(">"+a[i]+"</td><td ");
ah=(a[i+n]>=this.minDate.year&& a[i+n]<=this.maxDate.year);
s.a((ah)?"class='Wym' οnmοuseοver=/"this.className='WymOn'/" οnmοuseοut=/"this.className='Wym'/" οnmοusedοwn=/"$d.yInput.value='"+a[i+n]+"';$d.yDiv.style.display='none';$d.yInput.blur();/"":"class='Winvalidym'");
s.a(">"+a[i+n]+"</td></tr>");
}
s.a("</table>");
s.a("<table cellspacing=0 cellpadding=3 border=0><tr><td ");
s.a((this.minDate.year<ao)?"class='Wym' οnmοuseοver=/"this.className='WymOn'/" οnmοuseοut=/"this.className='Wym'/" οnmοusedοwn='$d.obj._fillyear("+(ao-10)+","+(au-10)+")'":"class='Winvalidym'");
s.a(">←</td><td class='Wym' οnmοuseοver=/"this.className='WymOn'/" οnmοuseοut=/"this.className='Wym'/" οnmοusedοwn=/"$d.yDiv.style.display='none';$d.yInput.blur();/">×</td><td ");
s.a((this.maxDate.year>au)?"class='Wym' οnmοuseοver=/"this.className='WymOn'/" οnmοuseοut=/"this.className='Wym'/" οnmοusedοwn='$d.obj._fillyear("+(ao+10)+","+(au+10)+")'":"class='Winvalidym'");
s.a(">→</td></tr></table>");
this.dd.yDiv.innerHTML=s.j();
};
WdatePicker.prototype._returnDateStr=function(Y,M,D,h,m,s,fmt)
{
if(Y==null){Y=this.year;}
if(M==null){M=this.month;}
if(D==null){D=this.date;}
if(h==null){h=this.hour;}
if(m==null){m=this.minute;}
if(s==null){s=this.sec;}
if(fmt==null){fmt=this.dateFmt;}
var ab=fmt.replace(/%[Yy]/,this.ad(Y,4)).replace(/%[M]/,this.ad(M,2)).replace(/%[Dd]/,this.ad(D,2));
if(this.showTime)
{
ab=ab.replace(/%[Hh]/,this.ad(h,2)).replace(/%[m]/,this.ad(m,2)).replace(/%[Ss]/,this.ad(s,2));
}
return ab;
};
WdatePicker.prototype.ad=function(s,len)
{
s=s+'';
for(var i=s.length;i<len;i++)
{s='0'+s;}
return s;
};
WdatePicker.prototype.aw=function(ab)
{
if(ab.indexOf(' ')!=-1)
{
ab=ab.substring(0,ab.indexOf(' '));
}
var s=ab.split(//W+/);
if(s.length>=3&&this.az(s[0]+'/'+s[1]+'/'+s[2]))
{
return{'year':parseInt(s[0],10),'month':parseInt(s[1],10),'date':parseInt(s[2],10)};
}
else
{
alert("日期范围格式错误/nInvalid MINDATE or MAXDATE/nFormat:YYYY-MM-DD or YYYY/MM/DD");
return;
}
};
WdatePicker.prototype.am=function(Y,M,D,h,m,s)
{
if(this.showTime)
{
this.eCont.setAttribute("REALVALUE",this._returnDateStr(Y,M,D,h,m,s,'%Y-%M-%D %h:%m:%s'));
}
else
{
this.eCont.setAttribute("REALVALUE",this._returnDateStr(Y,M,D,null,null,null,'%Y-%M-%D'));
}
};
WdatePicker.prototype.az=function(ab)
{
return ab.match(/^((/d{2}(([02468][048])|([13579][26]))[/-///s]?((((0?[13578])|(1[02]))[/-///s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[/-///s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[/-///s]?((0?[1-9])|([1-2][0-9])))))|(/d{2}(([02468][1235679])|([13579][01345789]))[/-///s]?((((0?[13578])|(1[02]))[/-///s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[/-///s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[/-///s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))(/s(((0?[0-9])|([1-2][0-3]))/:([0-5]?[0-9])((/s)|(/:([0-5]?[0-9])))))?$/);
};
WdatePicker.prototype.l=function(sDateTime)
{
var Y,M,D,h,m,s;
var v=sDateTime.split(//W+/);
var f=this.dateFmt.match(/%./g);
for(var i=0;i<f.length;i++)
{
if(f[i].toLowerCase()=='%y')
{
Y=Number(v[i]);
if(isNaN(Y))
{
return false;
}
}
else if(f[i]=='%M')
{
M=Number(v[i]);
if(isNaN(M))
{
return false;
}
}
else if(f[i].toLowerCase()=='%d')
{
D=Number(v[i]);
if(isNaN(D)){return false;}
}
else if(f[i].toLowerCase()=='%h')
{
h=Number(v[i]);
if(isNaN(h)){return false;}
}else if(f[i]=='%m')
{
m=Number(v[i]);
if(isNaN(m)){return false;}
}else if(f[i].toLowerCase()=='%s')
{
s=Number(v[i]);
if(isNaN(s)){return false;}
}
}
Y=(Y==undefined)?'2000':Y;
M=(M==undefined)?'1':M;
D=(D==undefined)?'1':D;
if(this.az(Y+'-'+M+'-'+D)&&(h==undefined||(h>=0)&&(h<=23))&&(s==undefined||(m>=0)&&(h<=59))&&(s==undefined||(s>=0)&&(s<=59)))
{
this.eCont.value=this._returnDateStr(Y,M,D,h,m,s);
if(((Y*10000+M*100+D*1)>=(this.minDate.year*10000+this.minDate.month*100+this.minDate.date*1))&&((Y*10000+M*100+D*1)<=(this.maxDate.year*10000+this.maxDate.month*100+this.maxDate.date*1)))
{
return true;
}
}
return false;
};
WdatePicker.prototype.aq=function()
{
var s=new __sb();
s.a("<div id=dpTitle>");
s.a("<div style='float:left;margin:2px'><div class='ymsel'></div>"+dpcfg.monthStr+"<input class='yminput' style='width:40px;' maxlength=2 value="+this.month+"></div>");
s.a("<div style='float:right;margin:2px'><div class='ymsel'></div>"+dpcfg.yearStr+"<input class='yminput' style='width:50px;' maxlength=4 value="+this.year+"></div></div>");
s.a("<div></div>");
s.a("<div>");
s.a(this.av());
s.a("</div>");
return s.j();
};
WdatePicker.prototype.av=function()
{
var s=new __sb();
s.a("<div id=dpTime style='"+((this.showTime)?'':'display:none;')+"float:left;margin-top:3px'><table cellspacing=0 cellpadding=0 border=0><tr><td rowspan=2><span id=dpTimeStr>"+this.timeStr+"</span>");
s.a(" <input class=tB maxlength=2 value="+this.hour+"><input value=':' class=tm readonly>");
s.a("<input class=tE maxlength=2 value="+this.minute+"><input value=':' class=tm readonly>");
s.a("<input class=tE maxlength=2 value="+this.sec+"></td><td>");
s.a("<button id=dpTimeUp></button></td></tr><tr><td><button id=dpTimeDown></button></td></tr></table></div>");
s.a("<div style='float:right;margin-top:3px;text-align:right'>");
s.a("<input id=dpOkInput type=button style='height:20px;width:90%'></input>");
s.a("</div>");return s.j();
};
WdatePicker.prototype._setOkInput=function()
{
var d=$d.obj;
if(d.eCont.value=="")
{
if(((this.aa*10000+this.p*100+this.z*1)>=(this.minDate.year*10000+this.minDate.month*100+this.minDate.date*1))&&((this.aa*10000+this.p*100+this.z*1)<=(this.maxDate.year*10000+this.maxDate.month*100+this.maxDate.date*1)))
{
$d.okInput.οnclick=function()
{
var d=$d.obj;
d.pickDate(d.aa,d.p,d.z,d.be,d.as,d.bj);
};
}
else
{
$d.okInput.disabled="disabled";
}
$d.okInput.value=d.todayStr+((d.showTime)?"":(" "+d.ad(d.aa,4)+'-'+d.ad(d.p,2)+'-'+d.ad(d.z,2)));
}
else
{
$d.okInput.οnclick=function()
{
$d.obj.pickDate();
};
$d.okInput.value=d.okStr;
}
};
WdatePicker.prototype.u=function()
{
var e,tempMonth;
if((this.year*100+this.month*1)<(this.minDate.year*100+this.minDate.month*1))
{
this.dd.yInput.value=e=this.minDate.year;
this.dd.mInput.value=tempMonth=this.minDate.month;
}
else if((this.year*100+this.month*1)>(this.maxDate.year*100+this.maxDate.month*1))
{
this.dd.yInput.value=e=this.maxDate.year;
this.dd.mInput.value=tempMonth=this.maxDate.month;
}
else
{
e=this.year;tempMonth=this.month;
}
var bg,bb,lastDay,lastDate;
var s=new __sb();
var i,j,k;
bg=new Date(e,tempMonth-1,1).getDay();
bb=1-bg;
lastDay=new Date(e,tempMonth,0).getDay();
lastDate=new Date(e,tempMonth,0).getDate();
s.a("<table id=dpDayTable width=100% border=0 cellspacing=0 cellpadding=0>");
s.a("<tr id=dpWeekTitle align=center>");
var ss=new Array();
for(i=0;i<7;i++)
{
s.a("<td>"+this.aWeekStr[i]+"</td>");
}
var ag='';
var bu='';
var bi=((e==this.aa)&&(tempMonth==this.p));
var bk=((e==this.bt)&&(tempMonth==this.bq));
var aj=((e*100+tempMonth*1)==(this.minDate.year*100+this.minDate.month));
var ai=((e*100+tempMonth*1)==(this.maxDate.year*100+this.maxDate.month));
var ccmy97 = aj&&ai;
var bh=!aj&&!ai;
for(i=1,j=bb;i<7;i++)
{
s.a("<tr>");
for(k=0;k<7;k++)
{
if(j>=1&&j<=lastDate)
{
if(bk&&(j==this.bs))
{
ag='Wselday';
}
else if(bi&&(j==this.z))
{
ag='Wtoday';
}
else
{
ag=((this.highLineWeekDay&&(k==0||k==6))?'Wwday':'Wday');
}
classOnStr=((this.highLineWeekDay&&(k==0||k==6))?'WwdayOn':'WdayOn');
s.a("<td align=center ");
if(bh||(!ccmy97&&((aj&&j>=this.minDate.date)||(ai&&j<=this.maxDate.date)))||(ccmy97&&(j>=this.minDate.date)&&(j<=this.maxDate.date)))
{
s.a("οnclick=/"$d.obj.pickDate(null,null,"+j+");/" ");
s.a("οnmοuseοver=/"this.className='"+classOnStr+"'/" ");
s.a("οnmοuseοut=/"this.className='"+ag+"'/" ");
}
else
{
ag='WinvalidDay';
}
s.a("class="+ag);
s.a("><span>"+j+"</span>");
}
else
{
s.a("<td><span></span>");
}
j++;s.a("</td>");
}
s.a("</tr>");
}
s.a("</table>");
return s.j();
};
WdatePicker.prototype.bm=function()
{
this.top.$d=this.top.document.dateDiv;
$d=this.top.$d;
};
WdatePicker.prototype.redraw=function()
{
this.year=this.dd.yInput.value;
this.month=this.dd.mInput.value;
this.dd.dDiv.innerHTML=this.u();
};
WdatePicker.prototype.pickDate=function(Y,M,D,h,m,s)
{
if(Y==null)
{
Y=this.dd.yInput.value;
}
if(M==null){M=this.dd.mInput.value;}
if(D==null){D=this.date;}
this.year=Y;
this.month=M;
this.date=D;
if(this.showTime)
{
if(h==null){h=this.dd.hhInput.value;}
if(m==null){m=this.dd.mmInput.value;}
if(s==null){s=this.dd.ssInput.value;}
this.hour=h;
this.minute=m;
this.sec=s;
this.eCont.value=this._returnDateStr(Y,M,D,h,m,s);
}
else
{
this.eCont.value=this._returnDateStr(Y,M,D);
}
this.am(Y,M,D,h,m,s);
$d.obj._markValue(true);
this.dd.style.display='none';
this.dd.ifr.style.display='none';
};
WdatePicker.prototype._markValue=function(bValue)
{
if(bValue)
{
this.eCont.className=this.eCont.className.replace(/ WdateFmtErr/,'');
}
else
{
var bf=dpcfg.errDealMode;
while(true)
{
switch(bf)
{
case 0:
if(!confirm(dpcfg.errAlertMsg))
{
bf=2;
continue;
}
case 1:
if(this.eCont.getAttribute("REALVALUE"))
{
this.l(this.eCont.getAttribute("REALVALUE"))
}
else
{
this.eCont.value="";
}
this.eCont.className=this.eCont.className.replace(/ WdateFmtErr/,'');
break;
case 2:
this.eCont.className=this.eCont.className.replace(/ WdateFmtErr/,'');
this.eCont.className=this.eCont.className.replace(/Wdate/,'Wdate WdateFmtErr');
break;
}
break;
}
}
};
if(navigator.product=='Gecko')
{
Window.prototype.__defineGetter__("screenLeft",function(){return this.screenX+(this.outerWidth-this.innerWidth);});
Window.prototype.__defineGetter__("screenTop",function(){return screenY+(window.outerHeight-window.innerHeight);});
Document.prototype.attachEvent=function(sType,fHandler){var ak=sType.replace(/on/,"");
fHandler._ieEmuEventHandler=function(e){window.event=e;return fHandler();};
this.addEventListener(ak,fHandler._ieEmuEventHandler,false);
};
Document.prototype.createStyleSheet=function(cssPath)
{
var head=document.getElementsByTagName('HEAD').item(0);
var style=document.createElement('link');
style.href=cssPath;style.rel='stylesheet';
style.type='text/css';head.appendChild(style);
};
Event.prototype.__defineSetter__("returnValue",function(value){if(!value){this.preventDefault();}return value;});
Event.prototype.__defineGetter__("srcElement",function(){var node=this.target;while(node.nodeType!=1){node=node.parentNode;}return node;});
Node.prototype.replaceNode=function(Node){this.parentNode.replaceChild(Node,this);};
Node.prototype.removeNode=function(removeChildren)
{
if(removeChildren)
{
return this.parentNode.removeChild(this);
}
else
{
var range=document.createRange();
range.selectNodeContents(this);
return this.parentNode.replaceChild(range.extractContents(),this);
}
};
HTMLElement.prototype.__defineSetter__("outerHTML",function(sHTML){var r=this.ownerDocument.createRange();r.setStartBefore(this);var df=r.createContextualFragment(sHTML);this.parentNode.replaceChild(df,this);return sHTML;});
HTMLElement.prototype.__defineGetter__("outerHTML",function(){var attr;var attrs=this.attributes;var str="<"+this.tagName;for(var i=0;i<attrs.length;i++){attr=attrs[i];if(attr.specified){str+=" "+attr.name+'="'+attr.value+'"';}}if(!this.canHaveChildren){return str+">";}return str+">"+this.innerHTML+"</"+this.tagName+">";});HTMLElement.prototype.__defineGetter__("parentElement",function(){if(this.parentNode==this.ownerDocument){return null;}return this.parentNode;});
HTMLElement.prototype.attachEvent=function(sType,fHandler)
{
var ak=sType.replace(/on/,"");
fHandler._ieEmuEventHandler=function(e){window.event=e;return fHandler();};
this.addEventListener(ak,fHandler._ieEmuEventHandler,false);
};
HTMLElement.prototype.insertAdjacentElement=function(where,parsedNode)
{
switch(where)
{
case "beforeBegin":
this.parentNode.insertBefore(parsedNode,this);
break;
case "afterBegin":
this.insertBefore(parsedNode,this.firstChild);
break;
case "beforeEnd":
this.appendChild(parsedNode);
break;
case "afterEnd":
if(this.nextSibling)this.parentNode.insertBefore(parsedNode,this.nextSibling);
else this.parentNode.appendChild(parsedNode);
break;
}
};
HTMLElement.prototype.getBoundingClientRect=function()
{
var obj=this;
var top=obj.offsetTop
;var left=obj.offsetLeft;
var right=obj.offsetWidth;
var bottom=obj.offsetHeight;
while(obj=obj.offsetParent)
{
if(obj.style.position=='absolute'||obj.style.position=='relative'||(obj.style.overflow!='visible'&&obj.style.overflow!=''))
{
break;
}
top+=obj.offsetTop;left+=obj.offsetLeft;
}
left-=document.body.scrollLeft;
top-=document.body.scrollTop;
right+=left;
bottom+=top;
return{'left':left,'top':top,'right':right,'bottom':bottom};
};
HTMLIFrameElement.prototype.__defineGetter__("Document",function(){return this.contentDocument});
}
function $getClientWidthHeight(win)
{
var cw=win.document.body.clientWidth;
var ch=win.document.body.clientHeight;
return{'width':cw,'height':ch};
}
function $getAbsM(topWin)
{
if(topWin==null)
{
topWin=top;
}
var leftM=0;
var topM=0;
var an=window;
while(an!=topWin)
{
var ifs=an.parent.document.getElementsByTagName('iframe');
for(var i=0;i<ifs.length;i++)
{
try
{
if(ifs[i].Document==an.document)
{
var rc=ifs[i].getBoundingClientRect();
leftM+=rc.left;
topM+=rc.top;
break;
}
}
catch(e)
{
continue;
}
}
an=an.parent;
}
return{'leftM':leftM,'topM':topM};
}
function disposeDatePicker()
{
if($d!=undefined&&$d.obj!=undefined&&$d.obj.eCont!=window.event.srcElement&&$d.style.display!='none')
{
var x=event.clientX;
var y=event.clientY;
var rc=$d.getBoundingClientRect();
if(x<rc.left||x>rc.right||y<rc.top||y>rc.bottom)
{
if($d.obj.eCont.value==''||$d.obj.l($d.obj.eCont.value))
{
$d.obj._markValue(true);
if($d.obj.eCont.value!='')
{
$d.obj.bc($d.obj.eCont.value,$d.obj.dateFmt);
$d.obj.am();
}
else
{
$d.obj.eCont.setAttribute("REALVALUE","");
}
}
else
{
$d.obj._markValue(false);
}
$d.yDiv.style.display=$d.mDiv.style.display='none';
$d.ifr.style.display='none';
$d.style.display='none';
}
else
{
$d.yDiv.style.display=$d.mDiv.style.display='none';
}
}
}
document.attachEvent('onmousedown',disposeDatePicker);