Calendar=function(h,j,i,k){var g="undefined",f=true,d=false,b=null,a=this;a.activeDiv=b;a.currentDateEl=b;a.getDateStatus=b;a.getDateToolTip=b;a.getDateText=b;a.timeout=b;a.onSelected=i||b;a.onClose=k||b;a.dragging=d;a.hidden=d;a.minYear=1970;a.maxYear=2050;a.dateFormat=Calendar._TT["DEF_DATE_FORMAT"];a.ttDateFormat=Calendar._TT["TT_DATE_FORMAT"];a.isPopup=f;a.weekNumbers=f;a.firstDayOfWeek=typeof h=="number"?h:Calendar._FD;a.showsOtherMonths=d;a.dateStr=j;a.ar_days=b;a.showsTime=d;a.time24=f;a.yearStep=2;a.hiliteToday=f;a.multiple=b;a.table=b;a.element=b;a.tbody=b;a.firstdayname=b;a.monthsCombo=b;a.yearsCombo=b;a.hilitedMonth=b;a.activeMonth=b;a.hilitedYear=b;a.activeYear=b;a.dateClicked=d;if(typeof Calendar._SDN==g){if(typeof Calendar._SDN_len==g)Calendar._SDN_len=3;for(var e=[],c=8;c>0;)e[--c]=Calendar._DN[c].substr(0,Calendar._SDN_len);Calendar._SDN=e;if(typeof Calendar._SMN_len==g)Calendar._SMN_len=3;e=[];for(var c=12;c>0;)e[--c]=Calendar._MN[c].substr(0,Calendar._SMN_len);Calendar._SMN=e}};Calendar._C=null;Calendar.is_ie=/msie/i.test(navigator.userAgent)&&!/opera/i.test(navigator.userAgent);Calendar.is_ie5=Calendar.is_ie&&/msie 5\.0/i.test(navigator.userAgent);Calendar.is_opera=/opera/i.test(navigator.userAgent);Calendar.is_khtml=/Konqueror|Safari|KHTML/i.test(navigator.userAgent);Calendar.getAbsolutePos=function(a){var e=0,f=0,c=/^div$/i.test(a.tagName);if(c&&a.scrollLeft)e=a.scrollLeft;if(c&&a.scrollTop)f=a.scrollTop;var b={x:a.offsetLeft-e,y:a.offsetTop-f};if(a.offsetParent){var d=this.getAbsolutePos(a.offsetParent);b.x+=d.x;b.y+=d.y}return b};Calendar.isRelated=function(d,b){var a=b.relatedTarget;if(!a){var c=b.type;if(c=="mouseover")a=b.fromElement;else if(c=="mouseout")a=b.toElement}while(a){if(a==d)return true;a=a.parentNode}return false};Calendar.removeClass=function(a,e){if(!(a&&a.className))return;for(var b=a.className.split(" "),c=[],d=b.length;d>0;)if(b[--d]!=e)c[c.length]=b[d];a.className=c.join(" ")};Calendar.addClass=function(b,a){Calendar.removeClass(b,a);b.className+=" "+a};Calendar.getElement=function(b){var a=Calendar.is_ie?window.event.srcElement:b.currentTarget;while(a.nodeType!=1||/^div$/i.test(a.tagName))a=a.parentNode;return a};Calendar.getTargetElement=function(b){var a=Calendar.is_ie?window.event.srcElement:b.target;while(a.nodeType!=1)a=a.parentNode;return a};Calendar.stopEvent=function(a){a||(a=window.event);if(Calendar.is_ie){a.cancelBubble=true;a.returnValue=false}else{a.preventDefault();a.stopPropagation()}return false};Calendar.addEvent=function(a,b,c){if(a.attachEvent)a.attachEvent("on"+b,c);else if(a.addEventListener)a.addEventListener(b,c,true);else a["on"+b]=c};Calendar.removeEvent=function(a,b,c){if(a.detachEvent)a.detachEvent("on"+b,c);else if(a.removeEventListener)a.removeEventListener(b,c,true);else a["on"+b]=null};Calendar.createElement=function(c,b){var a=null;if(document.createElementNS)a=document.createElementNS("http://www.w3.org/1999/xhtml",c);else a=document.createElement(c);typeof b!="undefined"&&b.appendChild(a);return a};Calendar._add_evs=function(el){with(Calendar){addEvent(el,"mouseover",dayMouseOver);addEvent(el,"mousedown",dayMouseDown);addEvent(el,"mouseout",dayMouseOut);if(is_ie){addEvent(el,"dblclick",dayMouseDblClick);el.setAttribute("unselectable",true)}}};Calendar.findMonth=function(a){var b="undefined";if(typeof a.month!=b)return a;else if(typeof a.parentNode.month!=b)return a.parentNode;return null};Calendar.findYear=function(a){var b="undefined";if(typeof a.year!=b)return a;else if(typeof a.parentNode.year!=b)return a.parentNode;return null};Calendar.showMonthsCombo=function(){var a=Calendar._C;if(!a)return false;var a=a,b=a.activeDiv,f=a.monthsCombo;a.hilitedMonth&&Calendar.removeClass(a.hilitedMonth,"hilite");a.activeMonth&&Calendar.removeClass(a.activeMonth,"active");var e=a.monthsCombo.getElementsByTagName("div")[a.date.getMonth()];Calendar.addClass(e,"active");a.activeMonth=e;var c=f.style;c.display="block";if(b.navtype<0)c.left=b.offsetLeft+"px";else{var d=f.offsetWidth;if(typeof d=="undefined")d=50;c.left=b.offsetLeft+b.offsetWidth-d+"px"}c.top=b.offsetTop+b.offsetHeight+"px"};Calendar.showYearsCombo=function(i){var a=Calendar._C;if(!a)return false;var a=a,b=a.activeDiv,g=a.yearsCombo;a.hilitedYear&&Calendar.removeClass(a.hilitedYear,"hilite");a.activeYear&&Calendar.removeClass(a.activeYear,"active");a.activeYear=null;for(var d=a.date.getFullYear()+(i?1:-1),c=g.firstChild,h=false,j=12;j>0;--j){if(d>=a.minYear&&d<=a.maxYear){c.innerHTML=d;c.year=d;c.style.display="block";h=true}else c.style.display="none";c=c.nextSibling;d+=i?a.yearStep:-a.yearStep}if(h){var e=g.style;e.display="block";if(b.navtype<0)e.left=b.offsetLeft+"px";else{var f=g.offsetWidth;if(typeof f=="undefined")f=50;e.left=b.offsetLeft+b.offsetWidth-f+"px"}e.top=b.offsetTop+b.offsetHeight+"px"}};Calendar.tableMouseUp=function(ev){var a=false,cal=Calendar._C;if(!cal)return a;cal.timeout&&clearTimeout(cal.timeout);var el=cal.activeDiv;if(!el)return a;var target=Calendar.getTargetElement(ev);ev||(ev=window.event);Calendar.removeClass(el,"active");(target==el||target.parentNode==el)&&Calendar.cellClick(el,ev);var mon=Calendar.findMonth(target),date=null;if(mon){date=new Date(cal.date);if(mon.month!=date.getMonth()){date.setMonth(mon.month);cal.setDate(date);cal.dateClicked=a;cal.callHandler()}}else{var year=Calendar.findYear(target);if(year){date=new Date(cal.date);if(year.year!=date.getFullYear()){date.setFullYear(year.year);cal.setDate(date);cal.dateClicked=a;cal.callHandler()}}}with(Calendar){removeEvent(document,"mouseup",tableMouseUp);removeEvent(document,"mouseover",tableMouseOver);removeEvent(document,"mousemove",tableMouseOver);cal._hideCombos();_C=null;return stopEvent(ev)}};Calendar.tableMouseOver=function(h){var c="hilite",m="rowhilite",a=Calendar._C;if(!a)return;var b=a.activeDiv,f=Calendar.getTargetElement(h);if(f==b||f.parentNode==b){Calendar.addClass(b,"hilite active");Calendar.addClass(b.parentNode,m)}else{(typeof b.navtype=="undefined"||b.navtype!=50&&(b.navtype==0||Math.abs(b.navtype)>2))&&Calendar.removeClass(b,"active");Calendar.removeClass(b,c);Calendar.removeClass(b.parentNode,m)}h||(h=window.event);if(b.navtype==50&&f!=b){var k=Calendar.getAbsolutePos(b),o=b.offsetWidth,l=h.clientX,g,n=true;if(l>k.x+o){g=l-k.x-o;n=false}else g=k.x-l;if(g<0)g=0;for(var e=b._range,p=b._current,r=Math.floor(g/10)%e.length,d=e.length;--d>=0;)if(e[d]==p)break;while(r-->0)if(n){if(--d<0)d=e.length-1}else if(++d>=e.length)d=0;var q=e[d];b.innerHTML=q;a.onUpdateTime()}var j=Calendar.findMonth(f);if(j)if(j.month!=a.date.getMonth()){a.hilitedMonth&&Calendar.removeClass(a.hilitedMonth,c);Calendar.addClass(j,c);a.hilitedMonth=j}else a.hilitedMonth&&Calendar.removeClass(a.hilitedMonth,c);else{a.hilitedMonth&&Calendar.removeClass(a.hilitedMonth,c);var i=Calendar.findYear(f);if(i)if(i.year!=a.date.getFullYear()){a.hilitedYear&&Calendar.removeClass(a.hilitedYear,c);Calendar.addClass(i,c);a.hilitedYear=i}else a.hilitedYear&&Calendar.removeClass(a.hilitedYear,c);else a.hilitedYear&&Calendar.removeClass(a.hilitedYear,c)}return Calendar.stopEvent(h)};Calendar.tableMouseDown=function(a){if(Calendar.getTargetElement(a)==Calendar.getElement(a))return Calendar.stopEvent(a)};Calendar.calDragIt=function(d){var a=Calendar._C;if(!(a&&a.dragging))return false;var b,c;if(Calendar.is_ie){c=window.event.clientY+document.body.scrollTop;b=window.event.clientX+document.body.scrollLeft}else{b=d.pageX;c=d.pageY}a.hideShowCovered();var e=a.element.style;e.left=b-a.xOffs+"px";e.top=c-a.yOffs+"px";return Calendar.stopEvent(d)};Calendar.calDragEnd=function(ev){var cal=Calendar._C;if(!cal)return false;cal.dragging=false;with(Calendar){removeEvent(document,"mousemove",calDragIt);removeEvent(document,"mouseup",calDragEnd);tableMouseUp(ev)}cal.hideShowCovered()};Calendar.dayMouseDown=function(ev){var a="mousemove",el=Calendar.getElement(ev);if(el.disabled)return false;var cal=el.calendar;cal.activeDiv=el;Calendar._C=cal;if(el.navtype!=300)with(Calendar){if(el.navtype==50){el._current=el.innerHTML;addEvent(document,a,tableMouseOver)}else addEvent(document,Calendar.is_ie5?a:"mouseover",tableMouseOver);addClass(el,"hilite active");addEvent(document,"mouseup",tableMouseUp)}else cal.isPopup&&cal._dragStart(ev);if(el.navtype==-1||el.navtype==1){cal.timeout&&clearTimeout(cal.timeout);cal.timeout=setTimeout("Calendar.showMonthsCombo()",250)}else if(el.navtype==-2||el.navtype==2){cal.timeout&&clearTimeout(cal.timeout);cal.timeout=setTimeout(el.navtype>0?"Calendar.showYearsCombo(true)":"Calendar.showYearsCombo(false)",250)}else cal.timeout=null;return Calendar.stopEvent(ev)};Calendar.dayMouseDblClick=function(a){Calendar.cellClick(Calendar.getElement(a),a||window.event);Calendar.is_ie&&document.selection.empty()};Calendar.dayMouseOver=function(d){var a=Calendar.getElement(d);if(Calendar.isRelated(a,d)||Calendar._C||a.disabled)return false;if(a.ttip){if(a.ttip.substr(0,1)=="_")a.ttip=a.caldate.print(a.calendar.ttDateFormat)+a.ttip.substr(1);a.calendar.tooltips.innerHTML=a.ttip}if(a.navtype!=300){Calendar.addClass(a,"hilite");if(a.caldate){Calendar.addClass(a.parentNode,"rowhilite");var c=a.calendar;if(c&&c.getDateToolTip){var b=a.caldate;window.status=b;a.title=c.getDateToolTip(b,b.getFullYear(),b.getMonth(),b.getDate())}}}return Calendar.stopEvent(d)};Calendar.dayMouseOut=function(ev){with(Calendar){var el=getElement(ev);if(isRelated(el,ev)||_C||el.disabled)return false;removeClass(el,"hilite");el.caldate&&removeClass(el.parentNode,"rowhilite");if(el.calendar)el.calendar.tooltips.innerHTML=_TT["SEL_DATE"]}};Calendar.cellClick=function(c,m){var n="hilite",p="selected",o="undefined",g=false,a=c.calendar,i=g,j=g,b=null;if(typeof c.navtype==o){if(a.currentDateEl){Calendar.removeClass(a.currentDateEl,p);Calendar.addClass(c,p);i=a.currentDateEl==c;if(!i)a.currentDateEl=c}a.date.setDateOnly(c.caldate);b=a.date;var q=!(a.dateClicked=!c.otherMonth);if(!q&&!a.currentDateEl&&a.multiple)a._toggleMultipleDate(new Date(b));else j=!c.disabled;q&&a._init(a.firstDayOfWeek,b)}else{if(c.navtype==200){Calendar.removeClass(c,n);a.callCloseHandler();return}b=new Date(a.date);c.navtype==0&&b.setDateOnly(new Date);a.dateClicked=g;var d=b.getFullYear(),l=b.getMonth();function h(c){var d=b.getDate(),a=b.getMonthDays(c);d>a&&b.setDate(a);b.setMonth(c)}switch(c.navtype){case 400:Calendar.removeClass(c,n);var k=Calendar._TT["ABOUT"];if(typeof k!=o)k+=a.showsTime?Calendar._TT["ABOUT_TIME"]:"";else k='Help and about box text is not translated into this language.\nIf you know this language and you feel generous please update\nthe corresponding file in "lang" subdir to match calendar-en.js\nand send it back to <mihai_bazon@yahoo.com> to get it into the distribution  ;-)\n\nThank you!\nhttp://dynarch.com/mishoo/calendar.epl\n';alert(k);return;case -2:d>a.minYear&&b.setFullYear(d-1);break;case -1:if(l>0)h(l-1);else if(d-->a.minYear){b.setFullYear(d);h(11)}break;case 1:if(l<11)h(l+1);else if(d<a.maxYear){b.setFullYear(d+1);h(0)}break;case 2:d<a.maxYear&&b.setFullYear(d+1);break;case 100:a.setFirstDayOfWeek(c.fdow);return;case 50:for(var f=c._range,r=c.innerHTML,e=f.length;--e>=0;)if(f[e]==r)break;if(m&&m.shiftKey){if(--e<0)e=f.length-1}else if(++e>=f.length)e=0;var s=f[e];c.innerHTML=s;a.onUpdateTime();return;case 0:if(typeof a.getDateStatus=="function"&&a.getDateStatus(b,b.getFullYear(),b.getMonth(),b.getDate()))return g}if(!b.equalsTo(a.date)){a.setDate(b);j=true}else if(c.navtype==0)j=i=true}if(j)m&&a.callHandler();if(i){Calendar.removeClass(c,n);m&&a.callCloseHandler()}};Calendar.prototype.create=function(v){var u="label-IEfix",c=12,n="time",t="DRAG_TO_MOVE",k="tr",g="td",m="div",l=null,a=this,q=l;if(!v){q=document.getElementsByTagName("body")[0];a.isPopup=true}else{q=v;a.isPopup=false}a.date=a.dateStr?new Date(a.dateStr):new Date;var h=Calendar.createElement("table");a.table=h;h.cellSpacing=0;h.cellPadding=0;h.calendar=a;Calendar.addEvent(h,"mousedown",Calendar.tableMouseDown);var f=Calendar.createElement(m);a.element=f;f.className="calendar";if(a.isPopup){f.style.position="absolute";f.style.display="none"}f.appendChild(h);var s=Calendar.createElement("thead",h),b=l,d=l,j=a,i=function(c,e,a){b=Calendar.createElement(g,d);b.colSpan=e;b.className="button";if(a!=0&&Math.abs(a)<=2)b.className+=" nav";Calendar._add_evs(b);b.calendar=j;b.navtype=a;b.innerHTML="<div unselectable='on'>"+c+"</div>";return b};d=Calendar.createElement(k,s);var p=6;a.isPopup&&--p;a.weekNumbers&&++p;i("?",1,400).ttip=Calendar._TT["INFO"];a.title=i("",p,300);a.title.className="title";if(a.isPopup){a.title.ttip=Calendar._TT[t];a.title.style.cursor="move";i("&#x00d7;",1,200).ttip=Calendar._TT["CLOSE"]}d=Calendar.createElement(k,s);d.className="headrow";a._nav_py=i("&#x00ab;",1,-2);a._nav_py.ttip=Calendar._TT["PREV_YEAR"];a._nav_pm=i("&#x2039;",1,-1);a._nav_pm.ttip=Calendar._TT["PREV_MONTH"];a._nav_now=i(Calendar._TT["TODAY"],a.weekNumbers?4:3,0);a._nav_now.ttip=Calendar._TT["GO_TODAY"];a._nav_nm=i("&#x203a;",1,1);a._nav_nm.ttip=Calendar._TT["NEXT_MONTH"];a._nav_ny=i("&#x00bb;",1,2);a._nav_ny.ttip=Calendar._TT["NEXT_YEAR"];d=Calendar.createElement(k,s);d.className="daynames";if(a.weekNumbers){b=Calendar.createElement(g,d);b.className="name wn";b.innerHTML=Calendar._TT["WK"]}for(var e=7;e>0;--e){b=Calendar.createElement(g,d);if(!e){b.navtype=100;b.calendar=a;Calendar._add_evs(b)}}a.firstdayname=a.weekNumbers?d.firstChild.nextSibling:d.firstChild;a._displayWeekdays();var r=Calendar.createElement("tbody",h);a.tbody=r;for(e=6;e>0;--e){d=Calendar.createElement(k,r);if(a.weekNumbers)b=Calendar.createElement(g,d);for(var x=7;x>0;--x){b=Calendar.createElement(g,d);b.calendar=a;Calendar._add_evs(b)}}if(a.showsTime){d=Calendar.createElement(k,r);d.className=n;b=Calendar.createElement(g,d);b.className=n;b.colSpan=2;b.innerHTML=Calendar._TT["TIME"]||"&nbsp;";b=Calendar.createElement(g,d);b.className=n;b.colSpan=a.weekNumbers?4:3;(function(){function f(g,h,d,f){var a=Calendar.createElement("span",b);a.className=g;a.innerHTML=h;a.calendar=j;a.ttip=Calendar._TT["TIME_PART"];a.navtype=50;a._range=[];if(typeof d!="number")a._range=d;else for(var c=d;c<=f;++c){var e;if(c<10&&f>=10)e="0"+c;else e=""+c;a._range[a._range.length]=e}Calendar._add_evs(a);return a}var h=j.date.getHours(),p=j.date.getMinutes(),a=!j.time24,k=h>c;if(a&&k)h-=c;var m=f("hour",h,a?1:0,a?c:23),i=Calendar.createElement("span",b);i.innerHTML=":";i.className="colon";var o=f("minute",p,0,59),e=l;b=Calendar.createElement(g,d);b.className=n;b.colSpan=2;if(a)e=f("ampm",k?"pm":"am",["am","pm"]);else b.innerHTML="&nbsp;";j.onSetTime=function(){var f,b=this.date.getHours(),d=this.date.getMinutes();if(a){f=b>=c;if(f)b-=c;if(b==0)b=c;e.innerHTML=f?"pm":"am"}m.innerHTML=b<10?"0"+b:b;o.innerHTML=d<10?"0"+d:d};j.onUpdateTime=function(){var b=this.date,d=parseInt(m.innerHTML,10);if(a)if(/pm/i.test(e.innerHTML)&&d<c)d+=c;else if(/am/i.test(e.innerHTML)&&d==c)d=0;var f=b.getDate(),g=b.getMonth(),h=b.getFullYear();b.setHours(d);b.setMinutes(parseInt(o.innerHTML,10));b.setFullYear(h);b.setMonth(g);b.setDate(f);this.dateClicked=false;this.callHandler()}})()}else a.onSetTime=a.onUpdateTime=function(){};var y=Calendar.createElement("tfoot",h);d=Calendar.createElement(k,y);d.className="footrow";b=i(Calendar._TT["SEL_DATE"],a.weekNumbers?8:7,300);b.className="ttip";if(a.isPopup){b.ttip=Calendar._TT[t];b.style.cursor="move"}a.tooltips=b;f=Calendar.createElement(m,a.element);a.monthsCombo=f;f.className="combo";for(e=0;e<Calendar._MN.length;++e){var o=Calendar.createElement(m);o.className=Calendar.is_ie?u:"label";o.month=e;o.innerHTML=Calendar._SMN[e];f.appendChild(o)}f=Calendar.createElement(m,a.element);a.yearsCombo=f;f.className="combo";for(e=c;e>0;--e){var w=Calendar.createElement(m);w.className=Calendar.is_ie?u:"label";f.appendChild(w)}a._init(a.firstDayOfWeek,a.date);q.appendChild(a.element)};Calendar._keyEvent=function(g){var a=window._dynarch_popupCalendar;if(!a||a.multiple)return false;Calendar.is_ie&&(g=window.event);var f=Calendar.is_ie||g.type=="keypress",c=g.keyCode;if(g.ctrlKey)switch(c){case 37:f&&Calendar.cellClick(a._nav_pm);break;case 38:f&&Calendar.cellClick(a._nav_py);break;case 39:f&&Calendar.cellClick(a._nav_nm);break;case 40:f&&Calendar.cellClick(a._nav_ny);break;default:return false}else switch(c){case 32:Calendar.cellClick(a._nav_now);break;case 27:f&&a.callCloseHandler();break;case 37:case 38:case 39:case 40:if(f){var l,b,e,d,m,i;l=c==37||c==38;i=c==37||c==39?1:7;function h(){m=a.currentDateEl;var c=m.pos;b=c&15;e=c>>4;d=a.ar_days[e][b]}h();function k(){var b=new Date(a.date);b.setDate(b.getDate()-i);a.setDate(b)}function j(){var b=new Date(a.date);b.setDate(b.getDate()+i);a.setDate(b)}while(1){switch(c){case 37:if(--b>=0)d=a.ar_days[e][b];else{b=6;c=38;continue}break;case 38:if(--e>=0)d=a.ar_days[e][b];else{k();h()}break;case 39:if(++b<7)d=a.ar_days[e][b];else{b=0;c=40;continue}break;case 40:if(++e<a.ar_days.length)d=a.ar_days[e][b];else{j();h()}}break}if(d)if(!d.disabled)Calendar.cellClick(d);else if(l)k();else j()}break;case 13:f&&Calendar.cellClick(a.currentDateEl,g);break;default:return false}return Calendar.stopEvent(g)};Calendar.prototype._init=function(q,c){var f=true,b=this,l=new Date,y=l.getFullYear(),x=l.getMonth(),w=l.getDate();b.table.style.visibility="hidden";var d=c.getFullYear();if(d<b.minYear){d=b.minYear;c.setFullYear(d)}else if(d>b.maxYear){d=b.maxYear;c.setFullYear(d)}b.firstDayOfWeek=q;b.date=new Date(c);var h=c.getMonth(),u=c.getDate(),z=c.getMonthDays();c.setDate(1);var m=(c.getDay()-b.firstDayOfWeek)%7;if(m<0)m+=7;c.setDate(-m);c.setDate(c.getDate()+1);for(var g=b.tbody.firstChild,A=Calendar._SMN[h],r=b.ar_days=[],s=Calendar._TT["WEEKEND"],p=b.multiple?(b.datesCells={}):null,i=0;i<6;++i,g=g.nextSibling){var a=g.firstChild;if(b.weekNumbers){a.className="day wn";a.innerHTML=c.getWeekNumber();a=a.nextSibling}g.className="daysrow";for(var o=false,e,t=r[i]=[],j=0;j<7;++j,a=a.nextSibling,c.setDate(e+1)){e=c.getDate();var v=c.getDay();a.className="day";a.pos=i<<4|j;t[j]=a;var n=c.getMonth()==h;if(!n)if(b.showsOtherMonths){a.className+=" othermonth";a.otherMonth=f}else{a.className="emptycell";a.innerHTML="&nbsp;";a.disabled=f;continue}else{a.otherMonth=false;o=f}a.disabled=false;a.innerHTML=b.getDateText?b.getDateText(c,e):e;if(p)p[c.print("%Y%m%d")]=a;if(b.getDateStatus){var k=b.getDateStatus(c,d,h,e);if(k===f){a.className+=" disabled";a.disabled=f}else{if(/disabled/i.test(k))a.disabled=f;a.className+=" "+k}}if(!a.disabled){a.caldate=new Date(c);a.ttip="_";if(!b.multiple&&n&&e==u&&b.hiliteToday){a.className+=" selected";b.currentDateEl=a}if(c.getFullYear()==y&&c.getMonth()==x&&e==w){a.className+=" today";a.ttip+=Calendar._TT["PART_TODAY"]}if(s.indexOf(v.toString())!=-1)a.className+=a.otherMonth?" oweekend":" weekend"}}if(!(o||b.showsOtherMonths))g.className="emptyrow"}b.title.innerHTML=Calendar._MN[h]+", "+d;b.onSetTime();b.table.style.visibility="visible";b._initMultipleDates()};Calendar.prototype._initMultipleDates=function(){var a=this;if(a.multiple)for(var c in a.multiple){var b=a.datesCells[c],d=a.multiple[c];if(!d)continue;if(b)b.className+=" selected"}};Calendar.prototype._toggleMultipleDate=function(e){var d="selected",a=this;if(a.multiple){var b=e.print("%Y%m%d"),c=a.datesCells[b];if(c){var f=a.multiple[b];if(!f){Calendar.addClass(c,d);a.multiple[b]=e}else{Calendar.removeClass(c,d);delete a.multiple[b]}}}};Calendar.prototype.setDateToolTipHandler=function(a){this.getDateToolTip=a};Calendar.prototype.setDate=function(a){!a.equalsTo(this.date)&&this._init(this.firstDayOfWeek,a)};Calendar.prototype.refresh=function(){this._init(this.firstDayOfWeek,this.date)};Calendar.prototype.setFirstDayOfWeek=function(a){this._init(a,this.date);this._displayWeekdays()};Calendar.prototype.setDateStatusHandler=Calendar.prototype.setDisabledHandler=function(a){this.getDateStatus=a};Calendar.prototype.setRange=function(a,b){this.minYear=a;this.maxYear=b};Calendar.prototype.callHandler=function(){var a=this;a.onSelected&&a.onSelected(a,a.date.print(a.dateFormat))};Calendar.prototype.callCloseHandler=function(){var a=this;a.onClose&&a.onClose(a);a.hideShowCovered()};Calendar.prototype.destroy=function(){var a=this.element.parentNode;a.removeChild(this.element);Calendar._C=null;window._dynarch_popupCalendar=null};Calendar.prototype.reparent=function(b){var a=this.element;a.parentNode.removeChild(a);b.appendChild(a)};Calendar._checkCalendar=function(b){var c=window._dynarch_popupCalendar;if(!c)return false;for(var a=Calendar.is_ie?Calendar.getElement(b):Calendar.getTargetElement(b);a!=null&&a!=c.element;a=a.parentNode);if(a==null){window._dynarch_popupCalendar.callCloseHandler();return Calendar.stopEvent(b)}};Calendar.prototype.show=function(){var a=this;for(var d=a.table.getElementsByTagName("tr"),f=d.length;f>0;){var e=d[--f];Calendar.removeClass(e,"rowhilite");for(var b=e.getElementsByTagName("td"),g=b.length;g>0;){var c=b[--g];Calendar.removeClass(c,"hilite");Calendar.removeClass(c,"active")}}a.element.style.display="block";a.hidden=false;if(a.isPopup){window._dynarch_popupCalendar=a;Calendar.addEvent(document,"keydown",Calendar._keyEvent);Calendar.addEvent(document,"keypress",Calendar._keyEvent);Calendar.addEvent(document,"mousedown",Calendar._checkCalendar)}a.hideShowCovered()};Calendar.prototype.hide=function(){var a=this;if(a.isPopup){Calendar.removeEvent(document,"keydown",Calendar._keyEvent);Calendar.removeEvent(document,"keypress",Calendar._keyEvent);Calendar.removeEvent(document,"mousedown",Calendar._checkCalendar)}a.element.style.display="none";a.hidden=true;a.hideShowCovered()};Calendar.prototype.showAt=function(b,c){var a=this.element.style;a.left=b+"px";a.top=c+"px";this.show()};Calendar.prototype.showAtElement=function(b,c){var d=this,a=Calendar.getAbsolutePos(b);if(!c||typeof c!="string"){this.showAt(a.x,a.y+b.offsetHeight);return true}function e(a){if(a.x<0)a.x=0;if(a.y<0)a.y=0;var e=document.createElement("div"),d=e.style;d.position="absolute";d.right=d.bottom=d.width=d.height="0px";document.body.appendChild(e);var b=Calendar.getAbsolutePos(e);document.body.removeChild(e);if(document.body.scrollLeft)b.x+=document.body.scrollLeft;b.x+=window.scrollX;if(document.body.scrollTop)b.y+=document.body.scrollTop;b.y+=window.scrollY;var c=a.x+a.width-b.x;if(c>0)a.x-=c;c=a.y+a.height-b.y;if(c>0)a.y-=c}this.element.style.display="block";Calendar.continuation_for_the_fucking_khtml_browser=function(){var g=d.element.offsetWidth,f=d.element.offsetHeight;d.element.style.display="none";var i=c.substr(0,1),h="l";if(c.length>1)h=c.substr(1,1);switch(i){case "T":a.y-=f;break;case "B":a.y+=b.offsetHeight;break;case "C":a.y+=(b.offsetHeight-f)/2;break;case "t":a.y+=b.offsetHeight-f}switch(h){case "L":a.x-=g;break;case "R":a.x+=b.offsetWidth;break;case "C":a.x+=(b.offsetWidth-g)/2;break;case "l":a.x+=b.offsetWidth-g}a.width=g;a.height=f+40;d.monthsCombo.style.display="none";e(a);d.showAt(a.x,a.y)};if(Calendar.is_khtml)setTimeout("Calendar.continuation_for_the_fucking_khtml_browser()",10);else Calendar.continuation_for_the_fucking_khtml_browser()};Calendar.prototype.setDateFormat=function(a){this.dateFormat=a};Calendar.prototype.setTtDateFormat=function(a){this.ttDateFormat=a};Calendar.prototype.parseDate=function(b,a){if(!a)a=this.dateFormat;this.setDate(Date.parseDate(b,a))};Calendar.prototype.hideShowCovered=function(){if(!Calendar.is_ie&&!Calendar.is_opera)return;function d(b){var a=b.style.visibility;if(!a)if(document.defaultView&&typeof document.defaultView.getComputedStyle=="function")if(!Calendar.is_khtml)a=document.defaultView.getComputedStyle(b,"").getPropertyValue("visibility");else a="";else if(b.currentStyle)a=b.currentStyle.visibility;else a="";return a}for(var e=["applet","iframe","select"],c=this.element,b=Calendar.getAbsolutePos(c),h=b.x,o=c.offsetWidth+h,i=b.y,p=c.offsetHeight+i,l=e.length;l>0;)for(var j=document.getElementsByTagName(e[--l]),a=null,k=j.length;k>0;){a=j[--k];b=Calendar.getAbsolutePos(a);var f=b.x,m=a.offsetWidth+f,g=b.y,n=a.offsetHeight+g;if(this.hidden||f>o||m<h||g>p||n<i){if(!a.__msh_save_visibility)a.__msh_save_visibility=d(a);a.style.visibility=a.__msh_save_visibility}else{if(!a.__msh_save_visibility)a.__msh_save_visibility=d(a);a.style.visibility="hidden"}}};Calendar.prototype._displayWeekdays=function(){for(var d=this.firstDayOfWeek,a=this.firstdayname,e=Calendar._TT["WEEKEND"],b=0;b<7;++b){a.className="day name";var c=(b+d)%7;if(b){a.ttip=Calendar._TT["DAY_FIRST"].replace("%s",Calendar._DN[c]);a.navtype=100;a.calendar=this;a.fdow=c;Calendar._add_evs(a)}e.indexOf(c.toString())!=-1&&Calendar.addClass(a,"weekend");a.innerHTML=Calendar._SDN[(b+d)%7];a=a.nextSibling}};Calendar.prototype._hideCombos=function(){this.monthsCombo.style.display="none";this.yearsCombo.style.display="none"};Calendar.prototype._dragStart=function(ev){var a=this;if(a.dragging)return;a.dragging=true;var posX,posY;if(Calendar.is_ie){posY=window.event.clientY+document.body.scrollTop;posX=window.event.clientX+document.body.scrollLeft}else{posY=ev.clientY+window.scrollY;posX=ev.clientX+window.scrollX}var st=a.element.style;a.xOffs=posX-parseInt(st.left);a.yOffs=posY-parseInt(st.top);with(Calendar){addEvent(document,"mousemove",calDragIt);addEvent(document,"mouseup",calDragEnd)}};Date._MD=[31,28,31,30,31,30,31,31,30,31,30,31];Date.SECOND=1e3;Date.MINUTE=60*Date.SECOND;Date.HOUR=60*Date.MINUTE;Date.DAY=24*Date.HOUR;Date.WEEK=7*Date.DAY;Date.parseDate=function(l,k){for(var h=new Date,c=0,d=-1,e=0,b=l.split(/\W+/),m=k.match(/%./g),a=0,f=0,g=0,i=0,a=0;a<b.length;++a){if(!b[a])continue;switch(m[a]){case "%d":case "%e":e=parseInt(b[a],10);break;case "%m":d=parseInt(b[a],10)-1;break;case "%Y":case "%y":c=parseInt(b[a],10);c<100&&(c+=c>29?1900:2e3);break;case "%b":case "%B":for(f=0;f<12;++f)if(Calendar._MN[f].substr(0,b[a].length).toLowerCase()==b[a].toLowerCase()){d=f;break}break;case "%H":case "%I":case "%k":case "%l":g=parseInt(b[a],10);break;case "%P":case "%p":if(/pm/i.test(b[a])&&g<12)g+=12;else if(/am/i.test(b[a])&&g>=12)g-=12;break;case "%M":i=parseInt(b[a],10)}}if(isNaN(c))c=h.getFullYear();if(isNaN(d))d=h.getMonth();if(isNaN(e))e=h.getDate();if(isNaN(g))g=h.getHours();if(isNaN(i))i=h.getMinutes();if(c!=0&&d!=-1&&e!=0)return new Date(c,d,e,g,i,0);c=0;d=-1;e=0;for(a=0;a<b.length;++a)if(b[a].search(/[a-zA-Z]+/)!=-1){var j=-1;for(f=0;f<12;++f)if(Calendar._MN[f].substr(0,b[a].length).toLowerCase()==b[a].toLowerCase()){j=f;break}if(j!=-1){if(d!=-1)e=d+1;d=j}}else if(parseInt(b[a],10)<=12&&d==-1)d=b[a]-1;else if(parseInt(b[a],10)>31&&c==0){c=parseInt(b[a],10);c<100&&(c+=c>29?1900:2e3)}else if(e==0)e=b[a];if(c==0)c=h.getFullYear();if(d!=-1&&e!=0)return new Date(c,d,e,g,i,0);return h};Date.prototype.getMonthDays=function(a){var b=this.getFullYear();if(typeof a=="undefined")a=this.getMonth();if(0==b%4&&(0!=b%100||0==b%400)&&a==1)return 29;else return Date._MD[a]};Date.prototype.getDayOfYear=function(){var a=this,d=new Date(a.getFullYear(),a.getMonth(),a.getDate(),0,0,0),b=new Date(a.getFullYear(),0,0,0,0,0),c=d-b;return Math.floor(c/Date.DAY)};Date.prototype.getWeekNumber=function(){var a=new Date(this.getFullYear(),this.getMonth(),this.getDate(),0,0,0),b=a.getDay();a.setDate(a.getDate()-(b+6)%7+3);var c=a.valueOf();a.setMonth(0);a.setDate(4);return Math.round((c-a.valueOf())/(7*8.64e7))+1};Date.prototype.equalsTo=function(b){var a=this;return a.getFullYear()==b.getFullYear()&&a.getMonth()==b.getMonth()&&a.getDate()==b.getDate()&&a.getHours()==b.getHours()&&a.getMinutes()==b.getMinutes()};Date.prototype.setDateOnly=function(c){var a=this,b=new Date(c);a.setDate(1);a.setFullYear(b.getFullYear());a.setMonth(b.getMonth());a.setDate(b.getDate())};Date.prototype.print=function(d){var c="0",b=this,h=b.getMonth(),j=b.getDate(),r=b.getFullYear(),p=b.getWeekNumber(),l=b.getDay(),a={},e=b.getHours(),o=e>=12,f=o?e-12:e,g=b.getDayOfYear();if(f==0)f=12;var m=b.getMinutes(),n=b.getSeconds();a["%a"]=Calendar._SDN[l];a["%A"]=Calendar._DN[l];a["%b"]=Calendar._SMN[h];a["%B"]=Calendar._MN[h];a["%C"]=1+Math.floor(r/100);a["%d"]=j<10?c+j:j;a["%e"]=j;a["%H"]=e<10?c+e:e;a["%I"]=f<10?c+f:f;a["%j"]=g<100?g<10?"00"+g:c+g:g;a["%k"]=e;a["%l"]=f;a["%m"]=h<9?c+(1+h):1+h;a["%M"]=m<10?c+m:m;a["%n"]="\n";a["%p"]=o?"PM":"AM";a["%P"]=o?"pm":"am";a["%s"]=Math.floor(b.getTime()/1e3);a["%S"]=n<10?c+n:n;a["%t"]="\t";a["%U"]=a["%W"]=a["%V"]=p<10?c+p:p;a["%u"]=l+1;a["%w"]=l;a["%y"]=(""+r).substr(2,2);a["%Y"]=r;a["%%"]="%";var i=/%./g;if(!Calendar.is_ie5&&!Calendar.is_khtml){d=d.replace(i,function(b){return a[b]});return d}for(var q=d.match(i),k=0;k<q.length;k++){var s=a[q[k]];if(s){i=new RegExp(q[k],"g");d=d.replace(i,s)}}return d};Date.prototype.__msh_oldSetFullYear=Date.prototype.setFullYear;Date.prototype.setFullYear=function(c){var a=this,b=new Date(a);b.__msh_oldSetFullYear(c);b.getMonth()!=a.getMonth()&&a.setDate(28);a.__msh_oldSetFullYear(c)};window._dynarch_popupCalendar=null;