﻿function DateSelector(){var oPop=null;var oPopDocument=null;var oPopBody=null;var inp=null;var html="<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'><html xmlns='http://www.w3.org/1999/xhtml'><head><meta http-equiv='Content-Type' content='text/html; charset=utf-8' /><style>html{border:0px;}body{border:0px;margin:0px;padding:0px;font-size:12px;font-family:宋体;border:1px #0065A8 solid;overflow:hidden;}table{border-collapse:collapse;margin:0px;}table td{padding:0px;margin:0px;}#dBox td{width:auto;height:21px;font-size:12px;font-family:宋体;text-align:center;color:#333333;border:1px #BCD0DE solid;}select{font-size:12px;font-family:Arial;width:100%;margin:0px;overflow:hidden;height:20px;}</style><script language='javascript'>Date.DateDiff=function(interval,date1,date2){interval=interval.toString().toUpperCase();date1=Date.Parse(date1);date2=Date.Parse(date2);switch(interval){case 'Y':return date2.ValueOf('D')-date1.ValueOf('D');case 'M':return date2.ValueOf('M')-date1.ValueOf('M');case 'D':return date2.ValueOf('D')-date1.ValueOf('D');case 'H':return date2.ValueOf('H')-date1.ValueOf('H');case 'N':return date2.ValueOf('N')-date1.ValueOf('N');case 'S':return date2.ValueOf('S')-date1.ValueOf('S');case 'I':return date2.ValueOf('I')-date1.ValueOf('I');default:alert('Error Interval');}};Date.Parse=function(s){if(s.constructor==Date){return s;}if(s.constructor==String){var reg=new RegExp();var p=new Array();var res=null;var data=null;p[0]='^([0-9]+)[-/]([0-9]+)[-/]([0-9]+)$';p[1]='^([0-9]+)[-/]([0-9]+)[-/]([0-9]+) ([0-9]+):([0-9]+)$';p[2]='^([0-9]+)[-/]([0-9]+)[-/]([0-9]+) ([0-9]+):([0-9]+):([0-9]+)$';p[3]='^([0-9]+)[-/]([0-9]+)[-/]([0-9]+) ([0-9]+):([0-9]+):([0-9]+):([0-9]+)$';for(var i=0;i<p.length;i++){reg=new RegExp(p[i],'gim');res=reg.exec(s);reg=null;if(res!=null){data=new Object();data.Year=parseInt(res[1],10);data.Month=parseInt(res[2],10);data.Date=parseInt(res[3],10);data.Hour=res[4]==null?0:parseInt(res[4],10);data.Minute=res[5]==null?0:parseInt(res[5],10);data.Second=res[6]==null?0:parseInt(res[6],10);data.Millisecond=res[7]==null?0:parseInt(res[7],10);break;}}if(data==null){return new Date();}if(data.Year<30)data.Year+=2000;else if(data.Year<100)data.Year+=1900;var date=new Date();date.setFullYear(data.Year,data.Month-1,data.Date);date.setHours(data.Hour,data.Minute,data.Second,data.Millisecond);return date;}};Date.DateAdd=function(interval,number,date){if(date.constructor!=Date)date=Date.Parse(date);interval=interval.toString().toUpperCase();var newdate=date.Clone();switch(interval){case 'Y':newdate.setFullYear(newdate.getFullYear()+number);break;case 'M':newdate.setMonth(newdate.getMonth()+number);break;case 'D':newdate.setDate(newdate.getDate()+number);break;case 'H':newdate.setHours(newdate.getHours()+number);break;case 'N':newdate.setMinutes(newdate.getMinutes()+number);break;case 'S':newdate.setSeconds(newdate.getSeconds()+number);break;default:value+=number;}return newdate;};Date.getToday=function(){var date=new Date();date.setMilliseconds(0);date.setSeconds(0);date.setMinutes(0);date.setHours(0);return date;};Date.prototype.Clone=function(){return new Date(this.valueOf());};Date.prototype.AddMonths=function(number){return Date.DateAdd('M',number,this);};Date.prototype.ToString=function(format){if(format==null)format='Y-M-D';format=format.replace(/Y/g,this.getFullYear());format=format.replace(/y/g,this.getFullYear().toString().substring(2));format=format.replace(/M/g,this.getMonth()<9?'0'+(this.getMonth()+1):(this.getMonth()+1));format=format.replace(/m/g,this.getMonth()+1);format=format.replace(/D/g,this.getDate()<10?'0'+this.getDate():this.getDate());format=format.replace(/d/g,this.getDate());format=format.replace(/H/g,this.getHours()<10?'0'+this.getHours():this.getHours());format=format.replace(/h/g,this.getHours());format=format.replace(/N/g,this.getMinutes()<10?'0'+this.getMinutes():this.getMinutes());format=format.replace(/n/g,this.getMinutes());format=format.replace(/S/g,this.getSeconds()<10?'0'+this.getSeconds():this.getSeconds());format=format.replace(/s/g,this.getSeconds());format=format.replace(/i/ig,this.getMilliseconds());return format;};Date.prototype.ValueOf=function(interval){if(interval==null)interval='i';interval=interval.toString().toLowerCase();var value=this.valueOf()+28800000;switch(interval){case 'i':return value();case 's':return parseInt(value/1000);case 'n':return parseInt(value/1000/60);case 'h':return parseInt(value/1000/60/60);case 'd':return parseInt(value/1000/60/60/24);case 'm':return (this.Year-1900)*12+this.Month;case 'y':return this.Year-1900;}};Date.prototype.getDaysOfMonth=function(){var thismonth=this.Clone();thismonth.setDate(1);var nextmonth=thismonth.AddMonths(1);var days=Date.DateDiff('D',thismonth,nextmonth);thismonth=null;nextmonth=null;return days;};Date.prototype.toString=function(){return this.ToString('Y-M-D H:N:S');};/***String类重写*/if(window['HTMLElement']!=null){HTMLElement.prototype.attachEvent=window.attachEvent=function(sType,fHandler){var shortTypeName=sType.replace(/^on/,'');fHandler._ieEmuEventHandler=function(e){window.event=e;return fHandler();};this.addEventListener(shortTypeName,fHandler._ieEmuEventHandler,false);};}</script><script language='javascript'>function $(key){return document.getElementById(key);}</script></head><body onselectstart='return false;' scroll='no'><div style='background-color:#FFFFFF;padding:1px;' id='maindiv'><div style='height:22px;overflow:hidden;'><input type='hidden' id='cudate' /><table style='width:100%;float:left;'><tr><td width='50%'><select id='sMonth' onkeyup='FillDate();' onchange='FillDate();'></select></td><td width='50%'><select id='sYear' onkeyup='FillDate();' onchange='FillDate();'></select></td></tr></table></div><div><table border='1' align='center' bordercolor='#BCD0DE' id='dBox' style='width:196px;'></table></div></div></body></html><script language='javascript'>var _MINYEAR=1970;var _MAXYEAR=(new Date()).getFullYear()+10;function FillYear(miny,maxy){var sYear=$('sYear');while(sYear.options.length>0)sYear.remove(0);for(var i=miny;i<=maxy;i++){var opt=new Option(i,i);sYear.options.add(opt);}}function Config(){var strMonth='January,February,March,April,May,June,July,August,September,October,November,December';strMonth=strMonth.split(',');var strWeek='Sun,Mon,Tue,Wed,Thu,Fir,Sat';strWeek=strWeek.split(',');var sMonth=$('sMonth');for(var i=0;i<12;i++){sMonth.options.add(new Option(strMonth[i],i+1));}var k=0;var d=0;var dBox=$('dBox');var tbody=dBox.firstChild;if(tbody==null)tbody=dBox;for(var i=0;i<7;i++){var tr=document.createElement('TR');tbody.appendChild(tr);for(var j=0;j<7;j++){var td=document.createElement('TD');tr.appendChild(td);if(i==0){td.style.color='#000';td.style.backgroundColor='#BCD0DE';td.innerHTML=strWeek[j];}}}FillYear(_MINYEAR,_MAXYEAR);$('cudate').onclick=settime;}function FillDate(date,sender){var sMonth=$('sMonth');var sYear=$('sYear');var dBox=$('dBox');var cudate=$('cudate');var preNull=false;if(sender==null){	preNull=true;sender=cudate.sender;date=sender.value;	if(date==''){date=new Date();}else{date=Date.Parse(date);}	var olddate=Date.Parse(sYear.options[sYear.selectedIndex].value+'-'+(sMonth.selectedIndex+1)+'-1');date.setFullYear(sYear.options[sYear.selectedIndex].value);date.setMonth(sMonth.selectedIndex);while(date.getMonth()>olddate.getMonth()){date.setDate(date.getDate()-1);}}else if(date==''&&(sender.min!=null||sender.max!=null)){date=new Date();if(sender.min!=null){var minD=Date.Parse(sender.min);if(Date.DateDiff('D',date,minD)>0)date=minD;}if(sender.max!=null){var maxD=Date.Parse(sender.max);if(Date.DateDiff('D',date,maxD)<0)date=maxD;}}if(date==''||date==null){date=new Date();}else{date=Date.Parse(date);}var k=0;var d=0;var dy=date.getFullYear();var dm=date.getMonth()+1;var dd=date.getDate();var days=date.getDaysOfMonth();var week=(date.getDay()-date.getDate()%7+7)%7+1;week=week==7?0:week;var maxD=new Date();var minD=new Date();if(sender.max!=null){maxD=Date.Parse(sender.max);}else{maxD.setFullYear(_MAXYEAR,11,31);}if(sender.min!=null){minD=Date.Parse(sender.min);}else{minD.setFullYear(_MINYEAR,0,1);}FillYear(minD.getFullYear(),maxD.getFullYear());for(var i=0;i<sMonth.options.length;i++){if(sMonth.options[i].value==dm){sMonth.selectedIndex=i;break;}}for(var i=0;i<sYear.options.length;i++){if(sYear.options[i].value==dy){sYear.selectedIndex=i;break;}}var dmove=new Date();dmove.setFullYear(dy,dm-1,1);dmove.setHours(0);dmove.setMinutes(0);dmove.setSeconds(0);dmove.setMilliseconds(0);for(var i=1;i<7;i++){var tr=dBox.getElementsByTagName('tr')[i];for(var j=0;j<7;j++){var td=tr.cells[j];k++;if(k>week&&d+1<=days){d++;td.innerHTML=d;td.style.cursor='pointer';td.style.backgroundColor='';td.disabled=false;if(dy+'-'+dm+'-'+d==date.ToString('Y-m-d')){td.style.color='#FF0000';}else{td.style.color='';}td.onmouseover=function(e){this.style.backgroundColor='#BCD0DE';};td.onmouseout=function(e){this.style.backgroundColor='';};td.onclick=function(e){cudate.value=dy+'-'+dm+'-'+this.innerHTML;cudate.ondblclick();hidden();};dmove.setDate(d);if(Date.DateDiff('D',minD,dmove)<0||Date.DateDiff('D',maxD,dmove)>0){td.style.cursor='default';td.disabled=true;td.style.backgroundColor='#EFEFEF';td.style.color='#888';td.onmouseover=null;td.onmouseout=null;td.onclick=null;}}else{td.innerHTML='';td.style.cursor='default';td.style.backgroundColor='';td.onmouseover=null;td.onmouseout=null;td.onclick=null;td.disabled=false;}}}}function hidden(){parent.eval('jQuery_Public_timer.hidden()');}function settime(e){FillDate(this.value,this);}window.attachEvent('onload',Config);</script>";this.config=function(){oPop=$("<IFRAME id='iframe_timer' style='display:none;position:absolute;left:0px;top:0px;width:200px;height:175px;border:0px;' frameborder='no' src='"+(document.location.protocol=="http:"?"about:blank":"/public/images/alpha.gif")+"'></IFRAME>");$("body").eq(0).append(oPop);oPop=oPop[0];if(document.frames!=null)	oPop.style.height="182px";var oD=null;if(document.frames==null){oD=$("iframe#iframe_timer")[0].contentDocument;}else{oD=document.frames["iframe_timer"].document;}oD.open();oD.write(html);oD.close();if(window.HTMLElement!=null){document.onclick=function(){if(oPop.show==true)oPop.show=false;else oPop.style.display="none";}}else{oPop.onblur=function(){if(document.activeElement!=inp)oPop.style.display="none";}}};this.SetDate=function(sender,callback){if(inp==sender&&oPop.style.display=="block"){oPop.style.display="none";return;}inp=sender;var pos=$(sender).offset();oPop.style.left=(pos.left+2)+"px";oPop.style.top=(pos.top+$(sender).height()+4)+"px";oPop.style.display="block";var oD=null;if(document.frames==null){oD=$("iframe#iframe_timer")[0].contentDocument;}else{oD=document.frames["iframe_timer"].document;}var cudate=oD.getElementById("cudate");cudate.sender=sender;cudate.value=sender.value;cudate.max=getdate(sender.getAttribute("max"));cudate.min=getdate(sender.getAttribute("min"));if(cudate.min==null)cudate.min="1980-1-1";if(cudate.max==null)cudate.max="2020-1-1";if(cudate.fireEvent!=null){cudate.fireEvent("onclick");}else{var evt=cudate.ownerDocument.createEvent("HTMLEvents");evt.initEvent("click",true,true);cudate.dispatchEvent(evt);}oPop.focus();oPop.show=true;if(callback==null)callback=function(){sender.value=cudate.value;if(sender.fireEvent!=null){sender.fireEvent("onchange");}else{var evt=sender.ownerDocument.createEvent("HTMLEvents");evt.initEvent("change",true,true);sender.dispatchEvent(evt);}$(sender).trigger("change");};cudate.ondblclick=callback;};function getdate(exp){if(exp==null)return null;if(exp.indexOf("(")>0)exp=eval(exp).toString();return exp;};this.hidden=function(){oPop.style.display="none";};}var jQuery_Public_timer=new DateSelector();jQuery.SetDate=jQuery_Public_timer.SetDate;$(document).ready(function(){jQuery_Public_timer.config();});
