DatePickerControl.defaultFormat="DD.MM.YYYY";DatePickerControl.submitFormat="";DatePickerControl.offsetY=1;DatePickerControl.offsetX=0;DatePickerControl.todayText="morgen";DatePickerControl.buttonTitle="Abrir calendario...";DatePickerControl.buttonPosition="in";DatePickerControl.buttonOffsetX=0;DatePickerControl.buttonOffsetY=0;DatePickerControl.closeOnTodayBtn=true;DatePickerControl.defaultTodaySel=true;DatePickerControl.autoShow=false;DatePickerControl.firstWeekDay=0;
DatePickerControl.weekend=[0,6];DatePickerControl.weekNumber=false;DatePickerControl.Months="Enero,Febrero,Marzo,Abril,Mayo,Junio,Julio,Agosto,Septiembre,Octubre,Noviembre,Diciembre".split(",");DatePickerControl.Days="Dom,Lun,Mar,Mi&eacute;,Jue,Vie,S&aacute;b".split(",");DatePickerControl.useTrickyBG=false;
if(navigator.userAgent.indexOf("MSIE")>1&&(DatePickerControl.useTrickyBG=true,DatePickerControl.offsetY=0,DatePickerControl.offsetX=-1,DatePickerControl.buttonOffsetX=-4,DatePickerControl.buttonOffsetY=-2,document.getElementsByTagName("html")[0].getAttribute("xmlns")!=null))DatePickerControl.offsetY=16,DatePickerControl.offsetX=10,DatePickerControl.buttonOffsetX=8,DatePickerControl.buttonOffsetY=14;DatePickerControl.editIdPrefix="DPC_";DatePickerControl.displayed=false;
DatePickerControl.HIDE_TIMEOUT=200;DatePickerControl.hideTimeout=null;DatePickerControl.buttonIdPrefix="CALBUTTON";DatePickerControl.dayIdPrefix="CALDAY";DatePickerControl.currentDay=1;DatePickerControl.originalValue="";DatePickerControl.calFrameId="calendarframe";DatePickerControl.submitByKey=false;DatePickerControl.dayOfWeek=0;DatePickerControl.firstFocused=false;DatePickerControl.hideCauseBlur=false;DatePickerControl.onSubmitAsigned=false;DatePickerControl.minDate=null;
DatePickerControl.maxDate=null;DatePickerControl.DOMonth=[31,28,31,30,31,30,31,31,30,31,30,31];DatePickerControl.lDOMonth=[31,29,31,30,31,30,31,31,30,31,30,31];function DatePickerControl(){}
DatePickerControl.init=function(){if(!document.getElementById("CalendarPickerControl")){this.setGlobalParams();this.calBG=null;if(this.useTrickyBG)this.calBG=document.createElement("iframe"),this.calBG.id="CalendarPickerControlBG",this.calBG.style.zIndex="49999",this.calBG.style.position="absolute",this.calBG.style.display="none",this.calBG.style.border="0px solid transparent",document.body.appendChild(this.calBG);this.calContainer=document.createElement("div");this.calContainer.id="CalendarPickerControl";
this.calContainer.style.zIndex="50000";this.calContainer.style.position="absolute";this.calContainer.style.display="none";document.body.appendChild(this.calContainer);this.calContainer.addEventListener?(this.calContainer.addEventListener("click",DPC_onContainerClick,false),window.addEventListener("resize",DPC_onWindowResize,false)):this.calContainer.attachEvent&&(this.calContainer.attachEvent("onclick",DPC_onContainerClick),window.attachEvent("onresize",DPC_onWindowResize))}var a=document.getElementsByTagName("input"),
b=a.length;for(i=0;i<b;i++)if(a[i].type.toLowerCase()=="text"){var c=a[i],d=c.getAttribute("datepicker"),e=false;if(d!=null&&d=="true")if(c.id){if(!this.createButton(c,false))continue;e=true}else alert("Attribute 'id' is mandatory for DatePickerControl.");else if(c.id&&c.id.indexOf(this.editIdPrefix)==0){if(!this.createButton(c,true))continue;e=true}c.setAttribute("isdatepicker","true");if(e&&(c.addEventListener?(c.addEventListener("keyup",DPC_onEditControlKeyUp,false),c.addEventListener("keydown",
DPC_onEditControlKeyDown,false),c.addEventListener("keypress",DPC_onEditControlKeyPress,false),c.addEventListener("blur",DPC_onEditControlBlur,false),c.addEventListener("focus",DPC_onEditControlFocus,false),c.addEventListener("change",DPC_onEditControlChange,false)):c.attachEvent&&(c.attachEvent("onkeyup",DPC_onEditControlKeyUp),c.attachEvent("onkeydown",DPC_onEditControlKeyDown),c.attachEvent("onkeypress",DPC_onEditControlKeyPress),c.attachEvent("onblur",DPC_onEditControlBlur),c.attachEvent("onfocus",
DPC_onEditControlFocus),c.attachEvent("onchange",DPC_onEditControlChange)),c=c.form,!this.onSubmitAsigned&&c))this.onSubmitAsigned=true,c.submitOrig=c.submit,c.submit=DPC_formSubmit,c.addEventListener?c.addEventListener("submit",DPC_onFormSubmit,false):c.attachEvent&&c.attachEvent("onsubmit",DPC_onFormSubmit)}};
DatePickerControl.setGlobalParams=function(){var a=document.getElementById("DPC_DEFAULT_FORMAT");if(a)this.defaultFormat=a.value;if(a=document.getElementById("DPC_SUBMIT_FORMAT"))this.submitFormat=a.value;if(a=document.getElementById("DPC_FIRST_WEEK_DAY"))this.firstWeekDay=a.value<0||a.value>6?0:parseInt(a.value);(a=document.getElementById("DPC_WEEKEND_DAYS"))&&eval("this.weekend = "+a.value);if(a=document.getElementById("DPC_AUTO_SHOW"))this.autoShow=a.value=="true";if(a=document.getElementById("DPC_DEFAULT_TODAY"))this.defaultTodaySel=
a.value=="true";if(a=document.getElementById("DPC_CALENDAR_OFFSET_X"))this.offsetX=parseInt(a.value);if(a=document.getElementById("DPC_CALENDAR_OFFSET_Y"))this.offsetY=parseInt(a.value);if(a=document.getElementById("DPC_TODAY_TEXT"))this.todayText=a.value;if(a=document.getElementById("DPC_BUTTON_TITLE"))this.buttonTitle=a.value;if(a=document.getElementById("DPC_BUTTON_POSITION"))this.buttonPosition=a.value;if(a=document.getElementById("DPC_BUTTON_OFFSET_X"))this.buttonOffsetX=parseInt(a.value);if(a=
document.getElementById("DPC_BUTTON_OFFSET_Y"))this.buttonOffsetY=parseInt(a.value);if(a=document.getElementById("DPC_WEEK_NUMBER"))this.weekNumber=a.value=="true";(a=document.getElementById("DPC_MONTH_NAMES"))&&eval("this.Months = "+a.value);(a=document.getElementById("DPC_DAY_NAMES"))&&eval("this.Days = "+a.value)};function DPC_autoInit(){DatePickerControl.init()}window.addEventListener?window.addEventListener("load",DPC_autoInit,false):window.attachEvent&&window.attachEvent("onload",DPC_autoInit);
DatePickerControl.createButton=function(a,b){var c=this.buttonIdPrefix+a.id;if(document.getElementById(c))return false;var d="";if(b)var e=a.id.split("_"),e=e[e.length-1],d=(e.indexOf("-")>0||e.indexOf("/")>0||e.indexOf(".")>0)&&e.indexOf("YY")>=0&&e.indexOf("D")>=0&&e.indexOf("M")>=0?e:this.defaultFormat;else if(d=a.getAttribute("datepicker_format"),!d)d=this.defaultFormat;a.setAttribute("datepicker_format",d);a.setAttribute("maxlength",d.length);a.setMinDate=function(a){this.setAttribute("datepicker_min",
a)};a.setMaxDate=function(a){this.setAttribute("datepicker_max",a)};e=document.createElement("div");e.id=c;e.title=this.buttonTitle;e.setAttribute("datepicker_inputid",a.id);e.setAttribute("datepicker_format",d);e.addEventListener?e.addEventListener("click",DPC_onButtonClick,false):e.attachEvent&&e.attachEvent("onclick",DPC_onButtonClick);a.parentNode?a.parentNode.appendChild(e):document.body.appendChild(e);d=getObject.getSize("offsetTop",a);c=getObject.getSize("offsetLeft",a);e.className="calendarbutton";
e.style.zIndex=1E4;e.style.cursor="pointer";e.style.top=d+Math.floor((a.offsetHeight-e.offsetHeight)/2)+this.buttonOffsetY+"px";d=Math.floor((a.offsetHeight-e.offsetHeight)/2);e.style.left=this.buttonPosition=="in"?c+a.offsetWidth-e.offsetWidth-d+this.buttonOffsetX+"px":c+a.offsetWidth+d+this.buttonOffsetX+"px";return true};
DatePickerControl.show=function(){if(!this.displayed){var a=this.inputControl;if(a!=null&&!a.disabled){var b=getObject.getSize("offsetTop",a),c=getObject.getSize("offsetLeft",a),d=document.getElementById(this.calFrameId);this.calContainer.style.top=b+a.offsetHeight+this.offsetY+"px";this.calContainer.style.left=c+this.offsetX+"px";this.calContainer.style.display="none";this.calContainer.style.visibility="visible";this.calContainer.style.display="block";this.calContainer.style.height=d.offsetHeight;
if(this.calBG&&(this.calBG.style.top=this.calContainer.style.top,this.calBG.style.left=this.calContainer.style.left,this.calBG.style.display="none",this.calBG.style.visibility="visible",this.calBG.style.display="block",this.calBG.style.width=this.calContainer.offsetWidth,d))this.calBG.style.height=d.offsetHeight;this.displayed=true;a.focus()}}};
DatePickerControl.hide=function(){if(this.displayed){this.calContainer.style.visibility="hidden";this.calContainer.style.left=-1E3;this.calContainer.style.top=-1E3;if(this.calBG)this.calBG.style.visibility="hidden",this.calBG.style.left=-1E3,this.calBG.style.top=-1E3;this.inputControl.value=this.originalValue;this.displayed=false}};DatePickerControl.getMonthName=function(a){return this.Months[a]};DatePickerControl.getDaysOfMonth=function(a,b){return this.isLeapYear(b)?this.lDOMonth[a]:this.DOMonth[a]};
DatePickerControl.calcMonthYear=function(a,b,c){var d=[];c==-1?a==0?(d[0]=11,d[1]=parseInt(b)-1):(d[0]=parseInt(a)-1,d[1]=parseInt(b)):c==1&&(a==11?(d[0]=0,d[1]=parseInt(b)+1):(d[0]=parseInt(a)+1,d[1]=parseInt(b)));return d};DatePickerControl.getAllCode=function(){var a="";a+="<table class='calframe' id='"+this.calFrameId+"'>";a+=this.getHeaderCode();a+=this.getDaysHeaderCode();a+=this.getDaysCode();a+="</table>";return a};
DatePickerControl.getHeaderCode=function(){var a=this.calcMonthYear(this.month,this.year,-1),b=a[0],a=a[1],c=this.calcMonthYear(this.month,this.year,1),d=c[0],c=c[1],e=new Date,f="",g=this.weekNumber?8:7;f+="<tr><td colspan='"+g+"' class='monthname'>";f+=this.monthName+"&nbsp;&nbsp;";f+="<span title='"+this.Months[this.month]+" "+(parseInt(this.year)-1)+"' class='yearbutton' ";f+="onclick='DatePickerControl.build("+this.month+", "+(parseInt(this.year)-1)+");return false;'>&laquo;</span>";f+="&nbsp;"+
this.year+"&nbsp;";f+="<span title='"+this.Months[this.month]+" "+(parseInt(this.year)+1)+"' class='yearbutton' ";f+="onclick='DatePickerControl.build("+this.month+", "+(parseInt(this.year)+1)+");return false;'>&raquo;</span>";f+="</td></tr>";f+="<tr><td style='border-width:0px' colspan='"+g+"'>";f+="<table class='navigation' width='100%'><tr>";f+="<td class='navbutton' title='"+this.Months[b]+" "+a+"' ";f+="onclick='DatePickerControl.build("+b+", "+a+");return false;'>&lt;&lt;</td>";f+="<td class='navbutton' title='morgen' ";
f+="onclick='DatePickerControl.build("+e.getMonth()+", "+e.getFullYear()+");DatePickerControl.selectToday();return false;'>";f+=this.todayText+"</td>";f+="<td class='navbutton' title='"+this.Months[d]+" "+c+"' ";f+="onclick='DatePickerControl.build("+d+", "+c+");return false;'>&gt;&gt;</td>";f+="</tr></table>";f+="</td></tr>";return f};
DatePickerControl.getDaysHeaderCode=function(){var a="";a+="<tr>";this.weekNumber&&(a+="<td class='weeknumber'>&nbsp;</td>");for(i=this.firstWeekDay;i<this.firstWeekDay+7;i++)a+="<td class='dayname' width='14%'>"+this.Days[i%7]+"</td>";a+="</tr>";return a};
DatePickerControl.getDaysCode=function(){var a=new Date;a.setDate(1);a.setMonth(this.month);a.setFullYear(this.year);var a=a.getDay(),b=1,c=this.getDaysOfMonth(this.month,this.year),d=0,e="";this.dayOfWeek=a;prevmontdays=this.getDaysOfMonth(this.month==0?11:this.month-1,this.prevm==11?this.year-1:this.year);a=a==0&&this.firstWeekDay?7:a;if(this.weekNumber)var f=this.getWeekNumber(this.year,this.month,1);e+="<tr>";this.weekNumber&&(e+="<td class='weeknumber'>"+f+"</td>");for(i=this.firstWeekDay;i<
a;i++)e=e+"<td class='dayothermonth'>"+(prevmontdays-a+i+1)+"</td>";for(j=a-this.firstWeekDay;j<7;j++)this.isInRange(b)?(classname=this.getDayClass(b,j),e+="<td class='"+classname+"' class_orig='"+classname+"' onClick='DatePickerControl.writeDate("+b+")' id='"+this.dayIdPrefix+b+"'>"+b+"</td>"):e+="<td class='dayothermonth'>"+b+"</td>",b++;e+="</tr>";for(k=2;k<7;k++){e+="<tr>";this.weekNumber&&(f++,f>=53&&(f=1),e+="<td class='weeknumber'>"+f+"</td>");for(j=0;j<7;j++)if(this.isInRange(b)?(classname=
this.getDayClass(b,j),e+="<td class='"+classname+"' class_orig='"+classname+"' onClick='DatePickerControl.writeDate("+b+")' id='"+this.dayIdPrefix+b+"'>"+b+"</td>"):e+="<td class='dayothermonth'>"+b+"</td>",b++,b>c){d=1;break}j==6&&(e+="</tr>");if(d==1)break}for(m=1;m<7-j;m++)e+="<td class='dayothermonth'>"+m+"</td>";return e};
DatePickerControl.getDayClass=function(a,b){var c=new Date,d=c.getDate(),e=c.getMonth(),c=c.getFullYear();if(a==d&&this.month==e&&this.year==c)return"today";else{d=(7+b+this.firstWeekDay)%7;for(i=0;i<this.weekend.length;i++)if(d==this.weekend[i])return"weekend";return"day"}};
DatePickerControl.formatData=function(a){var b;b=1+this.month;b=b.toString().length<2?"0"+b:b;var c=this.getMonthName(this.month).substr(0,3).toUpperCase(),d=this.getMonthName(this.month).toUpperCase(),e=new String(this.year),f=(new String(this.year)).substr(2,2),a=a.toString().length<2?"0"+a:a;switch(this.format){case "MM/DD/YYYY":b=b+"/"+a+"/"+e;break;case "MM/DD/YY":b=b+"/"+a+"/"+f;break;case "MM-DD-YYYY":b=b+"-"+a+"-"+e;break;case "MM-DD-YY":b=b+"-"+a+"-"+f;break;case "YYYY-MM-DD":b=e+"-"+b+"-"+
a;break;case "YYYY/MM/DD":b=e+"/"+b+"/"+a;break;case "DD/MON/YYYY":b=a+"/"+c+"/"+e;break;case "DD/MON/YY":b=a+"/"+c+"/"+f;break;case "DD-MON-YYYY":b=a+"-"+c+"-"+e;break;case "DD-MON-YY":b=a+"-"+c+"-"+f;break;case "DD/MONTH/YYYY":b=a+"/"+d+"/"+e;break;case "DD/MONTH/YY":b=a+"/"+d+"/"+f;break;case "DD-MONTH-YYYY":b=a+"-"+d+"-"+e;break;case "DD-MONTH-YY":b=a+"-"+d+"-"+f;break;case "DD/MM/YYYY":b=a+"/"+b+"/"+e;break;case "DD/MM/YY":b=a+"/"+b+"/"+f;break;case "DD-MM-YYYY":b=a+"-"+b+"-"+e;break;case "DD-MM-YY":b=
a+"-"+b+"-"+f;break;case "DD.MM.YYYY":b=a+"."+b+"."+e;break;case "DD.MM.YY":b=a+"."+b+"."+f;break;default:b=b+"/"+a+"/"+e}return b};DatePickerControl.getDateFromControl=function(a){if(a==null)a=this.inputControl;var b=a.value,a=a.getAttribute("datepicker_format");return this.getDateFromString(b,a.toString())};
DatePickerControl.getDateFromString=function(a,b){var c=new Date;if(a==""||b=="")return c;a=a.replace("/","@").replace("/","@");a=a.replace("-","@").replace("-","@");a=a.replace(".","@").replace(".","@");if(a.indexOf("/")>=0||a.indexOf("-")>=0||a.indexOf(".")>=0)return c;var d=a.split("@");if(d.length!=3)return c;for(i=0;i<3;i++)if(d[i]=parseFloat(d[i]),isNaN(d[i]))return c;c.setDate(1);b.substring(0,1).toUpperCase()=="D"?(c.setFullYear(this.yearTwo2Four(d[2])),c.setMonth(d[1]-1),c.setDate(d[0])):
b.substring(0,1).toUpperCase()=="Y"?(c.setFullYear(this.yearTwo2Four(d[0])),c.setMonth(d[1]-1),c.setDate(d[2])):b.substring(0,1).toUpperCase()=="M"&&(c.setFullYear(this.yearTwo2Four(d[2])),c.setMonth(d[0]-1),c.setDate(d[1]));return c};DatePickerControl.yearTwo2Four=function(a){a<99&&(a+=a>=30?1900:2E3);return a};
DatePickerControl.writeDate=function(a){a=this.formatData(a);this.originalValue=this.inputControl.value=a;this.hide();if(DatePickerControl.onSelect)DatePickerControl.onSelect(this.inputControl.id);this.firstFocused=true;this.inputControl.focus()};DatePickerControl.writeCurrentDate=function(){this.inputControl.value=this.formatData(this.currentDay)};
DatePickerControl.build=function(a,b){var c=this.month,d=this.year,e=document.getElementById(this.calFrameId);if(a==null){var f=new Date;this.month=f.getMonth();this.year=f.getFullYear()}else this.month=a,this.year=b;if(!this.isInRange(null))this.month=c,this.year=d;if(!this.isInRange(this.currentDay)){if(this.minDate&&this.currentDay<this.minDate.getDate())this.currentDay=this.minDate.getDate();if(this.maxDate&&this.currentDay>this.maxDate.getDate())this.currentDay=this.maxDate.getDate()}this.monthName=
this.Months[this.month];c=this.getAllCode();writeLayer(this.calContainer.id,null,c);if(this.calContainer&&e)this.calContainer.style.height=e.offsetHeight;this.firstFocused=true;this.inputControl.focus();this.selectDay(this.currentDay)};DatePickerControl.buildPrev=function(){if(this.displayed){var a=this.calcMonthYear(this.month,this.year,-1);this.build(a[0],a[1])}};DatePickerControl.buildNext=function(){if(this.displayed){var a=this.calcMonthYear(this.month,this.year,1);this.build(a[0],a[1])}};
DatePickerControl.selectToday=function(){var a=new Date,b=a.getTime()+864E5;a.setTime(b);a=a.getDate();if(this.isInRange(a))this.closeOnTodayBtn?(this.currentDay=a,this.writeDate(this.currentDay)):this.selectDay(a)};
DatePickerControl.selectDay=function(a){if(this.displayed&&this.isInRange(a)){var b=this.getDaysOfMonth(this.month,this.year);if(!(a>b)){var b=document.getElementById(this.dayIdPrefix+a),c=document.getElementById(this.dayIdPrefix+this.currentDay);if(c)c.className=c.getAttribute("class_orig");if(b)b.className="current",this.currentDay=a,this.writeCurrentDate()}}};
DatePickerControl.selectPrevDay=function(a){if(this.displayed){var b=this.currentDay,c=this.getDaysOfMonth(this.month,this.year),d=b-a;d<=0&&(a==7?(b=b+this.dayOfWeek+28-this.dayOfWeek,b--,d=b>c?b-7:b):d=c);this.selectDay(d)}};DatePickerControl.selectNextDay=function(a){if(this.displayed){var b=this.currentDay,c=this.getDaysOfMonth(this.month,this.year),d=b+a;d>c&&(a==7?(b=(b+this.dayOfWeek)%7-this.dayOfWeek,d=b<0?b+7:b,d++):d=1);this.selectDay(d)}};
DatePickerControl.showForEdit=function(a){if(!this.displayed&&a!=null&&!a.disabled){this.inputControl=a;this.originalValue=a.value;var b=this.inputControl.getAttribute("datepicker_format");if(b==null)b=this.defaultFormat;this.format=b;this.validate(a.value,b)?(this.currentDate=a=this.getDateFromControl(),this.build(a.getMonth(),a.getFullYear()),this.currentDay=a.getDate()):(this.originalValue=a.value="",this.currentDate=null,this.currentDay=this.defaultTodaySel?(new Date).getDate():1,this.build(null,
null));if(a=document.getElementById(this.dayIdPrefix+this.currentDay))a.className="current";this.writeCurrentDate();this.show()}};
DatePickerControl.isInRange=function(a){if(!this.minDate&&!this.maxDate)return true;if(a){var b=new Date;b.setFullYear(this.year);b.setMonth(this.month);b.setDate(a);if(this.minDate&&this.compareDates(b,this.minDate)<0)return false;if(this.maxDate&&this.compareDates(b,this.maxDate)>0)return false}else{a=parseInt(this.year.toString()+(this.month<10?"0"+this.month.toString():this.month.toString()));if(this.minDate&&(b=this.minDate.getMonth(),b=parseInt(this.minDate.getFullYear().toString()+(b<10?"0"+
b.toString():b.toString())),a<b))return false;if(this.maxDate&&(b=this.maxDate.getMonth(),b=parseInt(this.maxDate.getFullYear().toString()+(b<10?"0"+b.toString():b.toString())),a>b))return false}return true};
DatePickerControl.compareDates=function(a,b){var c=a.getMonth(),d=a.getDate(),e=a.getFullYear().toString()+(c<10?"0"+c.toString():c.toString())+(d<10?"0"+d.toString():d.toString()),c=b.getMonth(),d=b.getDate(),c=b.getFullYear().toString()+(c<10?"0"+c.toString():c.toString())+(d<10?"0"+d.toString():d.toString()),e=parseInt(e),c=parseInt(c);return e-c};
DatePickerControl.validate=function(a,b){var c,d,e,f,g=this.month,h=this.year;if(a=="")return false;b.substring(0,1).toUpperCase()=="D"?c=/^\d{1,2}(\-|\/|\.)\d{1,2}\1\d{2,4}$/:b.substring(0,1).toUpperCase()=="Y"?c=/^\d{2,4}(\-|\/|\.)\d{1,2}\1\d{1,2}$/:b.substring(0,1).toUpperCase()=="M"&&(c=/^\d{1,2}(\-|\/|\.)\d{1,2}\1\d{2,4}$/);if(!c.test(a))return false;c=a.indexOf("/")>1?"/":a.indexOf("-")>1?"-":".";c=a.split(c);b.substring(0,1).toUpperCase()=="D"?(d=parseFloat(c[0]),e=parseFloat(c[1]),f=parseFloat(c[2])):
b.substring(0,1).toUpperCase()=="Y"?(d=parseFloat(c[2]),e=parseFloat(c[1]),f=parseFloat(c[0])):b.substring(0,1).toUpperCase()=="M"&&(d=parseFloat(c[1]),e=parseFloat(c[0]),f=parseFloat(c[2]));if(e<1||e>12)return false;if(d>this.getDaysOfMonth(e-1,f))return false;this.month=e;this.year=f;d=this.isInRange(d);this.month=g;this.year=h;return d};DatePickerControl.isLeapYear=function(a){return a%4==0?a%100==0&&a%400!=0?false:true:false};function DPC_onButtonClick(a){DatePickerControl.onButtonClick(a)}
DatePickerControl.onButtonClick=function(a){if(this.displayed)this.hide();else{if(a==null)a=window.event;this.showForEdit(document.getElementById((a.srcElement?a.srcElement:a.originalTarget).getAttribute("datepicker_inputid")))}};function DPC_onContainerClick(a){DatePickerControl.onContainerClick(a)}DatePickerControl.onContainerClick=function(){if(this.hideTimeout)clearTimeout(this.hideTimeout),this.hideTimeout=null;this.inputControl.focus();return false};
function DPC_onEditControlKeyUp(a){DatePickerControl.onEditControlKeyUp(a)}
DatePickerControl.onEditControlKeyUp=function(a){if(a==null)a=window.event;var b=a.srcElement?a.srcElement:a.originalTarget;switch(a.charCode?a.charCode:a.which?a.which:a.keyCode){case 37:this.selectPrevDay(1);break;case 38:this.selectPrevDay(7);break;case 39:this.selectNextDay(1);break;case 40:if(this.displayed){this.selectNextDay(7);break}else this.showForEdit(b);break;case 27:this.hide();break;case 33:a.modifiers&Event.SHIFT_MASK||a.shiftKey?this.build(this.month,parseInt(this.year)-1):this.buildPrev();
break;case 34:a.modifiers&Event.SHIFT_MASK||a.shiftKey?this.build(this.month,parseInt(this.year)+1):this.buildNext();break;case 13:this.displayed&&this.currentDay>0&&this.submitByKey&&this.writeDate(this.currentDay)}return false};function DPC_onEditControlKeyDown(a){DatePickerControl.onEditControlKeyDown(a)}
DatePickerControl.onEditControlKeyDown=function(a){if(a==null)a=window.event;var b=a.charCode?a.charCode:a.which?a.which:a.keyCode;if(b>=65&&b<=90)return a.stopPropagation&&a.stopPropagation(),a.preventDefault&&a.preventDefault(),a.returnValue=false,a.cancelBubble=true,false;switch(b){case 13:this.submitByKey=true;break;case 9:case 32:this.displayed&&this.currentDay>0&&this.writeDate(this.currentDay)}};function DPC_onEditControlKeyPress(a){DatePickerControl.onEditControlKeyPress(a)}
DatePickerControl.onEditControlKeyPress=function(a){if(a==null)a=window.event;var b=a.charCode?a.charCode:a.which?a.which:a.keyCode;if(!(b<32||b>44&&b<58))return a.stopPropagation&&a.stopPropagation(),a.preventDefault&&a.preventDefault(),a.returnValue=false,a.cancelBubble=true,false};function DPC_onEditControlBlur(a){DatePickerControl.onEditControlBlur(a)}
DatePickerControl.onEditControlBlur=function(){if(!this.hideTimeout)this.hideTimeout=setTimeout("DatePickerControl.hide()",this.HIDE_TIMEOUT);this.firstFocused=false;this.hideCauseBlur=true};function DPC_onEditControlChange(a){DatePickerControl.onEditControlChange(a)}
DatePickerControl.onEditControlChange=function(a){if(a==null)a=window.event;a=a.srcElement?a.srcElement:a.originalTarget;if(a.value!=""){var b=a.getAttribute("datepicker_format");this.validate(a.value,b)||setTimeout("e = document.getElementById('"+a.id+"'); e.value=''; e.focus()",10)}};function DPC_onEditControlFocus(a){DatePickerControl.onEditControlFocus(a)}
DatePickerControl.onEditControlFocus=function(a){if(a==null)a=window.event;var a=a.srcElement?a.srcElement:a.originalTarget,b=a.getAttribute("datepicker_format"),c=a.getAttribute("datepicker_min");this.minDate=c?this.getDateFromString(c,b):null;if((this.maxDate=(c=a.getAttribute("datepicker_max"))?this.getDateFromString(c,b):null)&&this.minDate&&this.maxDate.getTime()<this.minDate.getTime())b=this.maxDate,this.maxDate=this.minDate,this.minDate=b;if((!this.displayed||this.hideCauseBlur)&&this.autoShow&&
!this.firstFocused){clearTimeout(this.hideTimeout);this.hideTimeout=null;this.firstFocused=true;if(this.hideCauseBlur)this.hideCauseBlur=false,this.hide();this.showForEdit(a)}else if(this.inputControl&&this.inputControl.id!=a.id)this.hide();else if(this.hideTimeout)clearTimeout(this.hideTimeout),this.hideTimeout=null};function DPC_onFormSubmit(a){DatePickerControl.onFormSubmit(a)}
DatePickerControl.onFormSubmit=function(a){if(this.submitByKey&&(this.submitByKey=false,this.displayed&&this.currentDay>0)){this.writeDate(this.currentDay);if(a==null)a=window.event;a.stopPropagation&&a.stopPropagation();a.preventDefault&&a.preventDefault();a.returnValue=false;a.cancelBubble=true;return false}this.reformatOnSubmit()};
DatePickerControl.reformatOnSubmit=function(){if(this.submitFormat=="")return true;var a=document.getElementsByTagName("input"),b=a.length,c;for(c=0;c<b;c++)if(a[c].type.toLowerCase()=="text"){var d=a[c];if(d.value!=""){var e=d.getAttribute("isdatepicker");if(e&&e=="true"){var e=this.getDateFromControl(d),f=this.submitFormat.replace("DD",e.getDate()),g=e.getMonth()+1,f=f.replace("MM",g.toString()),f=this.submitFormat.indexOf("YYYY")>=0?f.replace("YYYY",e.getFullYear()):f.replace("YY",e.getFullYear());
d.value=f}}}return true};function DPC_formSubmit(){var a=DatePickerControl.reformatOnSubmit();this.submitOrig&&(a=this.submitOrig());return a}function DPC_onWindowResize(a){DatePickerControl.onWindowResize(a)}DatePickerControl.onWindowResize=function(){this.relocate();this.relocateButtons()};
DatePickerControl.relocateButtons=function(){var a=document.getElementsByTagName("div");for(key in a)if(a[key].id&&a[key].id.indexOf(this.buttonIdPrefix)==0){var b=a[key];if(b.style.display!="none"){var c=document.getElementById(b.getAttribute("datepicker_inputid"));if(!(c.style.display=="none"||c.offsetTop==0)){var d=getObject.getSize("offsetTop",c),e=getObject.getSize("offsetLeft",c);b.style.top=d+Math.floor((c.offsetHeight-b.offsetHeight)/2)+this.buttonOffsetY+"px";d=Math.floor((c.offsetHeight-
b.offsetHeight)/2);b.style.left=this.buttonPosition=="in"?e+c.offsetWidth-b.offsetWidth-d+this.buttonOffsetX+"px":e+c.offsetWidth+d+this.buttonOffsetX+"px"}}}};
DatePickerControl.relocate=function(){if(this.displayed){var a=this.inputControl;if(a!=null){var b=getObject.getSize("offsetTop",a),c=getObject.getSize("offsetLeft",a);this.calContainer.style.top=b+a.offsetHeight+this.offsetY+"px";this.calContainer.style.left=c+this.offsetX+"px";if(this.calBG)this.calBG.style.top=this.calContainer.style.top,this.calBG.style.left=this.calContainer.style.left}}};
DatePickerControl.getWeekNumber=function(a,b,c){c=new Date(a,b,c);b=8-(new Date(a,0,1)).getDay();b==8&&(b=1);c=(Date.UTC(y2k(a),c.getMonth(),c.getDate(),0,0,0)-Date.UTC(y2k(a),0,1,0,0,0))/1E3/60/60/24+1;b=Math.floor((c-b+7)/7);b==0&&(a--,a=8-(new Date(a,0,1)).getDay(),b=a==2||a==8?53:52);return b};function y2k(a){return a<1E3?a+1900:a}
function getObject(a){if(bw.dom)this.hElement=document.getElementById(a),this.hStyle=this.hElement.style;else if(bw.ns4)this.hStyle=this.hElement=document.layers[a];else if(bw.ie)this.hElement=document.all[a],this.hStyle=this.hElement.style}getObject.getSize=function(a,b){for(nPos=0;b.tagName&&!/(body|html)/i.test(b.tagName);)nPos+=eval("hLayer."+a),a=="offsetTop"&&b.clientTop&&(nPos+=b.clientTop),a=="offsetLeft"&&b.clientLeft&&(nPos+=b.clientLeft),b=b.offsetParent;return nPos};
function writeLayer(a,b,c){document.layers?(a=b?eval("document."+b+".document."+a+".document"):document.layers[a].document,a.open(),a.write(c),a.close()):document.all?document.all[a].innerHTML=c:document.getElementById(a).innerHTML=c};
