Calendar=function(d,c,f,a){this.activeDiv=null;this.currentDateEl=null;this.getDateStatus=null;this.getDateToolTip=null;this.getDateText=null;this.timeout=null;this.onSelected=f||null;this.onClose=a||null;this.hidden=false;this.minYear=1970;this.maxYear=2050;this.dateFormat=Calendar._TT.DEF_DATE_FORMAT;this.ttDateFormat=Calendar._TT.TT_DATE_FORMAT;this.isPopup=true;this.weekNumbers=true;this.firstDayOfWeek=typeof d=="number"?d:Calendar._FD;this.showsOtherMonths=false;this.dateStr=c;this.ar_days=null;this.showsTime=false;this.time24=true;this.yearStep=2;this.hiliteToday=true;this.multiple=null;this.table=null;this.element=null;this.firstdayname=null;this.dateClicked=false;this.numberMonths=1;this.controlMonth=1;this.vertical=false;this.monthsInRow=1;this.rowsOfDayNames=new Array();this.tbody=new Array();this.titles=new Array();if(typeof Calendar._SDN=="undefined"){if(typeof Calendar._SDN_len=="undefined"){Calendar._SDN_len=3}var b=new Array();for(var e=8;e>0;){b[--e]=Calendar._DN[e].substr(0,Calendar._SDN_len)}Calendar._SDN=b;if(typeof Calendar._SMN_len=="undefined"){Calendar._SMN_len=3}b=new Array();for(var e=12;e>0;){b[--e]=Calendar._MN[e].substr(0,Calendar._SMN_len)}Calendar._SMN=b}};Calendar.getResourceLang=function(c,a){var b="";if(!a){if(Calendar._TT){b=Calendar._TT[c]}if(!b&&Calendar._TT_en){b=Calendar._TT_en[c]}}else{switch(a){case"dn":b=Calendar._DN[c];break;case"sdn":b=Calendar._SDN[c];break;case"mn":b=Calendar._MN[c];break;case"smn":b=Calendar._SMN[c];break;case"ampm":b=Calendar._AMPM[c];break}}if(!b){b=""+c}return b};Calendar.wch_id=0;Calendar.createWCH=function(a){var c=null;a=a||document.body;if(Calendar.is_ie&&!Calendar.is_ie5){var b="filter:progid:DXImageTransform.Microsoft.alpha(style=0,opacity=0);";var d="WCH"+(++Calendar.wch_id);a.insertAdjacentHTML("beforeEnd",'<iframe id="'+d+'" scrolling="no" frameborder="0" style="z-index:0;position:absolute;visibility:hidden;'+b+'border:0;top:0;left:0;width:0;height:0" src="javascript:false"></iframe>');c=document.getElementById(d)}return c};Calendar.destroyOnUnload=[];Calendar.addDestroyOnUnload=function(b,a){Calendar.destroyOnUnload.push([b,a])};Calendar.createProperty=function(b,a,c){b[a]=c;Calendar.addDestroyOnUnload(b,a)};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(e){var a=0,d=0;var c=/^div$/i.test(e.tagName);if(c&&e.scrollLeft){a=e.scrollLeft}if(c&&e.scrollTop){d=e.scrollTop}var f={x:e.offsetLeft-a,y:e.offsetTop-d};if(e.offsetParent){var b=this.getAbsolutePos(e.offsetParent);f.x+=b.x;f.y+=b.y}return f};Calendar.isRelated=function(c,a){var d=a.relatedTarget;if(!d){var b=a.type;if(b=="mouseover"){d=a.fromElement}else{if(b=="mouseout"){d=a.toElement}}}while(d){if(d==c){return true}d=d.parentNode}return false};Calendar.removeClass=function(e,d){if(!(e&&e.className)){return}var a=e.className.split(" ");var b=new Array();for(var c=a.length;c>0;){if(a[--c]!=d){b[b.length]=a[c]}}e.className=b.join(" ")};Calendar.addClass=function(b,a){Calendar.removeClass(b,a);b.className+=" "+a};Calendar.getElement=function(a){var b=Calendar.is_ie?window.event.srcElement:a.currentTarget;while(b.nodeType!=1||/^div$/i.test(b.tagName)){b=b.parentNode}return b};Calendar.getTargetElement=function(a){var b=Calendar.is_ie?window.event.srcElement:a.target;while(b.nodeType!=1){b=b.parentNode}return b};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,c,b){if(a.attachEvent){a.attachEvent("on"+c,b)}else{if(a.addEventListener){a.addEventListener(c,b,true)}else{a["on"+c]=b}}};Calendar.removeEvent=function(a,c,b){if(a.detachEvent){a.detachEvent("on"+c,b)}else{if(a.removeEventListener){a.removeEventListener(c,b,true)}else{a["on"+c]=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)}if(typeof b!="undefined"){b.appendChild(a)}return a};Calendar._add_evs=function(el){with(Calendar){addEvent(el,"mousedown",dayMouseDown);addEvent(el,"mouseout",dayMouseOut);if(is_ie){addEvent(el,"dblclick",dayMouseDblClick);el.setAttribute("unselectable",true)}}};Calendar.findMonth=function(a){if(typeof a.month!="undefined"){return a}else{if(typeof a.parentNode.month!="undefined"){return a.parentNode}}return null};Calendar.findYear=function(a){if(typeof a.year!="undefined"){return a}else{if(typeof a.parentNode.year!="undefined"){return a.parentNode}}return null};Calendar.tableMouseUp=function(ev){var cal=Calendar._C;if(!cal){return false}if(cal.timeout){clearTimeout(cal.timeout)}var el=cal.activeDiv;if(!el){return false}var target=Calendar.getTargetElement(ev);ev||(ev=window.event);Calendar.removeClass(el,"active");if(target==el||target.parentNode==el){Calendar.cellClick(el,ev)}var mon=Calendar.findMonth(target);var date=null;if(mon){date=new Date(cal.date);if(mon.month!=date.getMonth()){date.setMonth(mon.month);cal.setDate(date);cal.dateClicked=false;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=false;cal.callHandler()}}}with(Calendar){removeEvent(document,"mouseup",tableMouseUp);_C=null;return stopEvent(ev)}};Calendar.tableMouseOver=function(p){var a=Calendar._C;if(!a){return}var c=a.activeDiv;var l=Calendar.getTargetElement(p);if(l==c||l.parentNode==c){Calendar.addClass(c,"hilite active");Calendar.addClass(c.parentNode,"rowhilite")}else{if(typeof c.navtype=="undefined"||(c.navtype!=50&&(c.navtype==0||Math.abs(c.navtype)>2))){Calendar.removeClass(c,"active")}Calendar.removeClass(c,"hilite");Calendar.removeClass(c.parentNode,"rowhilite")}p||(p=window.event);if(c.navtype==50&&l!=c){var o=Calendar.getAbsolutePos(c);var r=c.offsetWidth;var q=p.clientX;var s;var n=true;if(q>o.x+r){s=q-o.x-r;n=false}else{s=o.x-q}if(s<0){s=0}var f=c._range;var h=c._current;var g=Math.floor(s/10)%f.length;for(var e=f.length;--e>=0;){if(f[e]==h){break}}while(g-->0){if(n){if(--e<0){e=f.length-1}}else{if(++e>=f.length){e=0}}}var b=f[e];c.innerHTML=b;a.onUpdateTime()}var d=Calendar.findMonth(l);if(d){if(d.month!=a.date.getMonth()){if(a.hilitedMonth){Calendar.removeClass(a.hilitedMonth,"hilite")}Calendar.addClass(d,"hilite");a.hilitedMonth=d}else{if(a.hilitedMonth){Calendar.removeClass(a.hilitedMonth,"hilite")}}}else{if(a.hilitedMonth){Calendar.removeClass(a.hilitedMonth,"hilite")}var m=Calendar.findYear(l);if(m){if(m.year!=a.date.getFullYear()){if(a.hilitedYear){Calendar.removeClass(a.hilitedYear,"hilite")}Calendar.addClass(m,"hilite");a.hilitedYear=m}else{if(a.hilitedYear){Calendar.removeClass(a.hilitedYear,"hilite")}}}else{if(a.hilitedYear){Calendar.removeClass(a.hilitedYear,"hilite")}}}return Calendar.stopEvent(p)};Calendar.tableMouseDown=function(a){if(Calendar.getTargetElement(a)==Calendar.getElement(a)){return Calendar.stopEvent(a)}};Calendar.dayMouseDown=function(ev){var el=Calendar.getElement(ev);if(el.disabled){writeLog("el.disabled = "+el.disabled);return false}var cal=null;cal=el.calendar;cal.activeDiv=el;writeLog("cal = "+cal);Calendar._C=cal;writeLog("el.navtype = "+el.navtype+"  <br/><br/><br/>");if(el.navtype!=300){with(Calendar){if(el.navtype==50){el._current=el.innerHTML}else{addEvent(document,"mouseup",tableMouseUp)}}}return Calendar.stopEvent(ev)};Calendar.dayMouseDblClick=function(a){Calendar.cellClick(Calendar.getElement(a),a||window.event);if(Calendar.is_ie){document.selection.empty()}};Calendar.dayMouseOver=function(b){var a=Calendar.getElement(b);if(Calendar.isRelated(a,b)||Calendar._C||a.disabled){return false}if(a.navtype!=300){Calendar.addClass(a,"hilite");if(a.caldate){Calendar.addClass(a.parentNode,"rowhilite")}}return Calendar.stopEvent(b)};Calendar.dayMouseOut=function(ev){with(Calendar){var el=getElement(ev);if(isRelated(el,ev)||_C||el.disabled){return false}removeClass(el,"hilite");if(el.caldate){removeClass(el.parentNode,"rowhilite")}return stopEvent(ev)}};Calendar.cellClick=function(c,x){var n=c.calendar;var g=false;var b=false;var y=null;while(!n){c=c.parentNode;n=c.calendar}if(c.className.indexOf("disabled")!=-1||c.className.indexOf("true")!=-1){return false}if(typeof c.navtype=="undefined"){if(n.currentDateEl){if(c.className.indexOf("day")==-1){return}Calendar.removeClass(n.currentDateEl,"selected");Calendar.addClass(c,"selected");g=(n.currentDateEl==c);if(!g){n.currentDateEl=c}}var d=new Date(c.caldate[0],c.caldate[1],c.caldate[2]);if(d.getDate()!=c.caldate[2]){d.setDate(c.caldate[2])}n.date.setDateOnly(d);n.currentDate.setDateOnly(d);y=n.date;n.dateClicked=true;if(n.multiple){n._toggleMultipleDate(new Date(y))}b=true;if(c.otherMonth){n._init(n.firstDayOfWeek,y)}n.onSetTime()}else{if(c.navtype==200){Calendar.removeClass(c,"hilite");n.callCloseHandler();return}y=new Date(n.date);if(c.navtype==0&&!n.bEventShowHistory){y.setDateOnly(new Date())}n.dateClicked=false;var m=y.getFullYear();var t=y.getMonth();function l(A){var B=y.getDate();var i=y.getMonthDays(A);if(B>i){y.setDate(i)}y.setMonth(A)}switch(c.navtype){case 400:Calendar.removeClass(c,"hilite");var o=Calendar.getResourceLang("ABOUT");if(typeof o!="undefined"){o+=n.showsTime?Calendar.getResourceLang("ABOUT_TIME"):""}else{o='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 <support@zapatec.com> to get it into the distribution  ;-)\n\nThank you!\nhttp://www.zapatec.com\n'}alert(o);return;case -2:if(m>n.minYear){y.setFullYear(m-1)}break;case -1:if(t>0){l(t-1)}else{if(m-->n.minYear){y.setFullYear(m);l(11)}}break;case 1:if(t<11){l(t+1)}else{if(m<n.maxYear){y.setFullYear(m+1);l(0)}}break;case 2:if(m<n.maxYear){y.setFullYear(m+1)}break;case 100:n.setFirstDayOfWeek(c.fdow);Calendar.prefs.fdow=n.firstDayOfWeek;Calendar.savePrefs();if(n.onFDOW){n.onFDOW(n.firstDayOfWeek)}return;case 50:var y=n.currentDate;if(c.className.indexOf("ampm",0)>=0){}else{if(!((n.timeInterval==null)||((n.timeInterval<60)&&(c.className.indexOf("hour",0)!=-1)))){break}}var p=c._range;var r=c.firstChild.data;var v=(y.getHours()>=12);for(var u=p.length;--u>=0;){if(p[u]==r){break}}if(x&&x.shiftKey){if(--u<0){u=p.length-1}}else{if(++u>=p.length){u=0}}if(n.getDateStatus){var q=null;var f=null;var a=new Date(y);if(c.className.indexOf("ampm",0)!=-1){q=y.getMinutes();f=(p[u]==Calendar.getResourceLang("pm","ampm"))?((y.getHours()==12)?(y.getHours()):(y.getHours()+12)):(y.getHours()-12);if(n.getDateStatus&&n.getDateStatus(a,y.getFullYear(),y.getMonth(),y.getDate(),parseInt(f,10),parseInt(q,10))){var h;if(p[u]==Calendar.getResourceLang("pm","ampm")){h=-5}else{h=5}hours=f;minutes=q;do{minutes+=h;if(minutes>=60){minutes-=60;++hours;if(hours>=24){hours-=24}a.setHours(hours)}if(minutes<0){minutes+=60;--hours;if(hours<0){hours+=24}a.setHours(hours)}a.setMinutes(minutes);if(!n.getDateStatus(a,y.getFullYear(),y.getMonth(),y.getDate(),parseInt(hours,10),parseInt(minutes,10))){f=hours;q=minutes;if(f>12){u=1}else{u=0}n.date.setHours(f);n.date.setMinutes(q);n.onSetTime()}}while((f!=hours)||(q!=minutes))}a.setHours(f)}if(c.className.indexOf("hour",0)!=-1){q=y.getMinutes();f=(!n.time24)?((v)?((p[u]!=12)?(parseInt(p[u],10)+12):(12)):((p[u]!=12)?(p[u]):(0))):(p[u]);a.setHours(f)}if(c.className.indexOf("minute",0)!=-1){f=y.getHours();q=p[u];a.setMinutes(q)}}var s=false;if(n.getDateStatus){s=n.getDateStatus(a,y.getFullYear(),y.getMonth(),y.getDate(),parseInt(f,10),parseInt(q,10))}if(!s){c.firstChild.data=p[u]}n.onUpdateTime();return;case 201:case 202:var w=c.timePart;var y=n.currentDate;if((w.className.indexOf("minute",0)!=-1)&&(n.timeInterval>30)){break}var z=parseInt(w.firstChild.data,10);var v=(y.getHours()>=12);var p=w._range;for(var u=p.length;--u>=0;){if(z==p[u]){z=u;break}}var e=w._step;if(c.navtype==201){z=e*Math.floor(z/e);z+=e;if(z>=p.length){z=0}}else{z=e*Math.ceil(z/e);z-=e;if(z<0){z=p.length-e}}if(n.getDateStatus){var q=null;var f=null;var a=new Date(y);if(w.className=="hour"){q=y.getMinutes();f=(!n.time24)?((v)?((p[z]!=12)?(parseInt(p[z],10)+12):(12)):((p[z]!=12)?(p[z]):(0))):(p[z]);a.setHours(f)}if(w.className=="minute"){f=y.getHours();q=z;a.setMinutes(p[z])}}var s=false;if(n.getDateStatus){s=n.getDateStatus(a,y.getFullYear(),y.getMonth(),y.getDate(),parseInt(f,10),parseInt(q,10))}if(!s){w.firstChild.data=p[z]}n.onUpdateTime();return;case 0:if(n.getDateStatus&&((n.getDateStatus(y,y.getFullYear(),y.getMonth(),y.getDate())==true)||(n.getDateStatus(y,y.getFullYear(),y.getMonth(),y.getDate())=="disabled"))){return false}break}if(!y.equalsTo(n.date)){if((c.navtype>=-2&&c.navtype<=2)&&(c.navtype!=0)){n._init(n.firstDayOfWeek,y,true);return}n.setDate(y);b=!(c.navtype&&(c.navtype>=-2&&c.navtype<=2))}}if(b){n.callHandler()}if(g){Calendar.removeClass(c,"hilite");n.callCloseHandler()}};Calendar.prototype.create=function(o){var g=null;if(!o){g=window.document.getElementsByTagName("body")[0];this.isPopup=true;this.WCH=Calendar.createWCH()}else{g=o;this.isPopup=false}this.currentDate=this.date=this.dateStr?new Date(this.dateStr):new Date();var v=Calendar.createElement("table");this.table=v;v.cellSpacing=0;v.cellPadding=0;Calendar.createProperty(v,"calendar",this);Calendar.addEvent(v,"mousedown",Calendar.tableMouseDown);var n=Calendar.createElement("div");this.element=n;n.className="calendar";if(Calendar.is_opera){v.style.width=(this.monthsInRow*((this.weekNumbers)?(8):(7))*2+4.4*this.monthsInRow)+"em"}if(this.isPopup){n.style.position="absolute";n.style.display="none"}var c=Calendar.createElement("div");this.separator=c;c.className="middleLine";c.style.position="absolute";c.style.display="none";n.appendChild(v);n.appendChild(c);var b=null;var f=null;var m=this;var d=function(y,l,i){b=Calendar.createElement("td",f);b.colSpan=l;b.className="button";Calendar._add_evs(b);b.calendar=m;b.navtype=i;if(y.length!=0){b.innerHTML="<div unselectable='on'>"+y+"</div>"}return b};var e=function(i,l){b=Calendar.createElement("td",i);b.colSpan=l;b.className="button";return b};var x=Math.floor(this.numberMonths/this.monthsInRow);if(this.numberMonths%this.monthsInRow>0){++x}for(var p=1;p<=x;++p){var u=Calendar.createElement("thead",v);f=Calendar.createElement("tr",u);f.className="borderCont";b=Calendar.createElement("td",f);b.colSpan=1;b.className="topBorderLeft";b=Calendar.createElement("td",f);b.colSpan=12;b.className="topBorder";b=Calendar.createElement("td",f);b.colSpan=1;b.className="topBorderRight";if(Calendar.is_opera){u.style.display="table-row-group"}if(this.numberMonths!=1){f=Calendar.createElement("tr",u);Calendar.addClass(f,"head");var w=5;this.weekNumbers&&++w;this.titles[p]=new Array();for(var q=1;(q<=this.monthsInRow)&&((p-1)*this.monthsInRow+q<=this.numberMonths);++q){if(q==1){this._nav_pm=d("&nbsp;",1,-1);Calendar.addClass(this._nav_pm,"navPrev")}else{e(f,1)}this.titles[p][q]=d("&nbsp;",w,300);this.titles[p][q].className="title";if(q==this.monthsInRow){this._nav_nm=d("&nbsp;",1,1);Calendar.addClass(this._nav_nm,"navNext")}else{e(f,1)}}}f=Calendar.createElement("tr",u);f.className="dottedBorder";b=Calendar.createElement("td",f);b.colSpan=14;b.innerHTML="&nbsp;";b.className="dottedBorderTop";f=Calendar.createElement("tr",u);f.className="daynames";for(q=1;(q<=this.monthsInRow)&&((p-1)*this.monthsInRow+q<=this.numberMonths);++q){if(this.weekNumbers){b=Calendar.createElement("td",f);b.className="name wn";b.appendChild(window.document.createTextNode(Calendar.getResourceLang("WK")));if(q>1){Calendar.addClass(b,"month-left-border")}var t=Calendar.getResourceLang("WK");if(t==null){t=""}}for(var s=7;s>0;--s){b=Calendar.createElement("td",f);b.appendChild(document.createTextNode("&nbsp;"))}}this.firstdayname=f.childNodes[this.weekNumbers?1:0];this.rowsOfDayNames[p]=this.firstdayname;this._displayWeekdays();var a=Calendar.createElement("tbody",v);Calendar.addClass(a,"container");this.tbody[p]=a;for(s=6;s>0;--s){f=Calendar.createElement("tr",a);for(q=1;(q<=this.monthsInRow)&&((p-1)*this.monthsInRow+q<=this.numberMonths);++q){if(this.weekNumbers){b=Calendar.createElement("td",f);b.appendChild(document.createTextNode("&nbsp;"))}for(var r=7;r>0;--r){b=Calendar.createElement("td",f);b.appendChild(document.createTextNode("&nbsp;"));Calendar.createProperty(b,"calendar",this);Calendar._add_evs(b)}}}}var h=Calendar.createElement("tfoot",v);this.onSetTime=this.onUpdateTime=function(){};f=Calendar.createElement("tr",h);f.className="dottedBorder";b=Calendar.createElement("td",f);b.colSpan=14;b.innerHTML="&nbsp;";b.className="dottedBorderBottom";f=Calendar.createElement("tr",h);f.className="footrow";b=d(Calendar._TT.CLOSE,this.weekNumbers?(8*this.numberMonths):(7*this.numberMonths),200);b.className="closeCalendarBtn";f=Calendar.createElement("tr",h);f.className="borderCont";b=Calendar.createElement("td",f);b.colSpan=1;b.className="bottomBorderLeft";b=Calendar.createElement("td",f);b.colSpan=12;b.className="bottomBorder";b=Calendar.createElement("td",f);b.colSpan=1;b.className="bottomBorderRight";this._init(this.firstDayOfWeek,this.date);g.appendChild(this.element)};Calendar._keyEvent=function(m){var a=window._dynarch_popupCalendar;if(!a||a.multiple){return false}(Calendar.is_ie)&&(m=window.event);var i=(Calendar.is_ie||m.type=="keypress"),n=m.keyCode;if(m.ctrlKey){switch(n){case 37:i&&Calendar.cellClick(a._nav_pm);break;case 38:i&&Calendar.cellClick(a._nav_py);break;case 39:i&&Calendar.cellClick(a._nav_nm);break;case 40:i&&Calendar.cellClick(a._nav_ny);break;default:return false}}else{switch(n){case 32:Calendar.cellClick(a._nav_now);break;case 27:i&&a.callCloseHandler();break;case 37:case 38:case 39:case 40:if(i){var e,o,l,g,c,d;e=n==37||n==38;d=(n==37||n==39)?1:7;function b(){c=a.currentDateEl;var q=c.pos;o=q&15;l=q>>4;g=a.ar_days[l][o]}b();function f(){var p=new Date(a.date);p.setDate(p.getDate()-d);a.setDate(p)}function h(){var p=new Date(a.date);p.setDate(p.getDate()+d);a.setDate(p)}while(1){switch(n){case 37:if(--o>=0){g=a.ar_days[l][o]}else{o=6;n=38;continue}break;case 38:if(--l>=0){g=a.ar_days[l][o]}else{f();b()}break;case 39:if(++o<7){g=a.ar_days[l][o]}else{o=0;n=40;continue}break;case 40:if(++l<a.ar_days.length){g=a.ar_days[l][o]}else{h();b()}break}break}if(g){if(!g.disabled){Calendar.cellClick(g)}else{if(e){f()}else{h()}}}}break;case 13:if(i){Calendar.cellClick(a.currentDateEl,m)}break;default:return false}}return Calendar.stopEvent(m)};Calendar.prototype._init=function(t,P,q){var m=new Date(),M=m.getDate(),B=m.getFullYear(),H=m.getMonth();if(this.getDateStatus&&!q){var z=this.getDateStatus(P,P.getFullYear(),P.getMonth(),P.getDate());var f=new Date(P);while(((z==true)||(z=="disabled"))&&(f.getMonth()==P.getMonth())){P.setTime(P.getTime()+86400000);var z=this.getDateStatus(P,P.getFullYear(),P.getMonth(),P.getDate())}if(f.getMonth()!=P.getMonth()){P=new Date(f);while(((z==true)||(z=="disabled"))&&(f.getMonth()==P.getMonth())){P.setTime(P.getTime()-86400000);var z=this.getDateStatus(P,P.getFullYear(),P.getMonth(),P.getDate())}}if(f.getMonth()!=P.getMonth()){q=true;P=new Date(f)}}var e=P.getFullYear();var a=P.getMonth();var R=Math.floor(this.numberMonths/this.monthsInRow);var s;var v,A,o;if(!this.vertical){v=(this.controlMonth-1);s=a-v}else{A=((this.numberMonths-1)%this.monthsInRow)+1;o=(this.controlMonth-1)%this.monthsInRow;bottom=(o>=(A)?(A):(o));v=(o)*(R-1)+Math.floor((this.controlMonth-1)/this.monthsInRow)+bottom;s=a-v}this.firstDayOfWeek=t;if(!q){this.currentDate=P}this.date=P;(this.date=new Date(this.date)).setDateOnly(P);e=this.date.getFullYear();a=this.date.getMonth();var h=P.getMonth();var g=this.date.getDate();var E=P.getMonthDays();var u=new Array();if(this.numberMonths%this.monthsInRow>0){++R}for(var K=1;K<=R;++K){u[K]=new Array();for(var L=1;(L<=this.monthsInRow)&&((K-1)*this.monthsInRow+L<=this.numberMonths);++L){var D=new Date(P);if(this.vertical){var Q=P.getMonth()-v+((L-1)*(R-1)+(K-1)+((A<L)?(A):(L-1)))}else{var Q=P.getMonth()-v+(K-1)*this.monthsInRow+L-1}if(Q<0){D.setFullYear(D.getFullYear()-1);Q=12+Q}if(Q>11){D.setFullYear(D.getFullYear()+1);Q=Q-12}D.setDate(1);D.setMonth(Q);var I=(D.getDay()-this.firstDayOfWeek)%7;if(I<0){I+=7}var w=D.getHours();D.setDate(-I);D.setDate(D.getDate()+1);if(w!=D.getHours()){D.setDate(1);D.setMonth(Q);D.setDate(-I);D.setDate(D.getDate()+1)}u[K][L]=D}}var b=Calendar._SMN[a];var c=Calendar._TT.WEEKEND;var J=this.multiple?(this.datesCells={}):null;var F=this.getDateText;var T="";for(var K=1;K<=R;++K){var n=this.tbody[K].firstChild;for(var N=7;--N>0;n=n.nextSibling){var x=n.firstChild;var S=false;for(var L=1;(L<=this.monthsInRow)&&((K-1)*this.monthsInRow+L<=this.numberMonths);++L){P=u[K][L];if(this.weekNumbers){x.className=" day wn";x.innerHTML=P.getWeekNumber();if(L>1){Calendar.addClass(x,"month-left-border")}x=x.nextSibling}n.className="daysrow";T="daysrow";var y;var d;for(j=7;x&&(y=P.getDate())&&(j>0);P.setDate(y+1),((P.getDate()==y)?(P.setHours(1)&&P.setDate(y+1)):(false)),x=x.nextSibling,--j){var p=P.getDay(),C=P.getMonth(),G=P.getFullYear();x.className=" day";if(j==7&&L==1){Calendar.addClass(x,"month-left-border")}if(j==1&&L==this.monthsInRow){Calendar.addClass(x,"month-right-border")}if(this.vertical){Q=h-v+((L-1)*(R-1)+(K-1)+((A<L)?(A):(L-1)))}else{Q=h-v+((K-1)*this.monthsInRow+L-1)}if(Q<0){Q=12+Q}if(Q>11){Q=Q-12}var O=!(x.otherMonth=!(C==Q));if(!O){if(this.showsOtherMonths){x.className+=" othermonth"}else{Calendar.removeClass(x,"day");x.innerHTML="&nbsp;";continue}}else{S=true}x.innerHTML=F?F(P,G,C,y):y;J&&(J[P.print("%Y%m%d")]=x);if(this.getDateStatus){var z=this.getDateStatus(P,G,C,y);if(this.getDateToolTip){var r=this.getDateToolTip(P,G,C,y);if(r){x.title=r}}if(z==true){x.className+=" disabled"}else{x.className+=" "+z}}if(!x.disabled){x.caldate=[G,C,y];if(!this.multiple&&O&&y==this.currentDate.getDate()&&this.hiliteToday&&(C==this.currentDate.getMonth())&&(G==this.currentDate.getFullYear())){x.className+=" selected";this.currentDateEl=x}if(G==B&&C==H&&y==M){x.className+=" today"}if((c!=null)&&(c.indexOf(p.toString())!=-1)){x.className+=x.otherMonth?" oweekend":" weekend"}}}if(!(S||this.showsOtherMonths)){n.className="emptyrow";T="emptyrow"}}if((N==1)&&(K<R)){if(n.className=="emptyrow"){n=n.previousSibling}x=n.firstChild;while(x!=null){Calendar.addClass(x,"month-bottom-border");x=x.nextSibling}}}}if(Calendar.is_opera){this.separator.style.left="201px";if(T!="emptyrow"){this.separator.style.height="188px"}else{this.separator.style.height="162px"}}else{this.separator.style.left="161px";if(T!="emptyrow"){this.separator.style.height="178px"}else{this.separator.style.height="152px"}}if(this.numberMonths==1){this.title.innerHTML=Calendar.getResourceLang(a,"mn")+", "+e;if(this.params&&this.params.titleHtml){if(typeof this.params.titleHtml=="function"){this.title.innerHTML=this.params.titleHtml(this.title.innerHTML,a)}else{this.title.innerHTML+=this.params.titleHtml}}}else{if(this.params&&this.params.titleHtml){if(typeof this.params.titleHtml=="function"){this.title.innerHTML=this.params.titleHtml(Calendar.getResourceLang(a,"mn"),a)}else{this.title.innerHTML=this.params.titleHtml}}for(var K=1;K<=R;++K){for(var L=1;(L<=this.monthsInRow)&&((K-1)*this.monthsInRow+L<=this.numberMonths);++L){if(this.vertical){Q=a-v+((L-1)*(R-1)+(K-1)+((A<L)?(A):(L-1)))}else{Q=a-v+(K-1)*this.monthsInRow+L-1}validYear=e;if(Q<0){--validYear;Q=12+Q}if(Q>11){++validYear;Q=Q-12}this.titles[K][L].innerHTML=Calendar.getResourceLang(Q,"mn")}}}this.onSetTime();this._initMultipleDates()};Calendar.prototype._initMultipleDates=function(){if(this.multiple){for(var b in this.multiple){var a=this.datesCells[b];var c=this.multiple[b];if(!c){continue}if(a){a.className+=" selected"}}}};Calendar.prototype._toggleMultipleDate=function(b){if(this.multiple){var c=b.print("%Y%m%d");var a=this.datesCells[c];if(a){var e=this.multiple[c];if(!e){Calendar.addClass(a,"selected");this.multiple[c]=b}else{Calendar.removeClass(a,"selected");delete this.multiple[c]}}}};Calendar.prototype.setDateToolTipHandler=function(a){this.getDateToolTip=a};Calendar.prototype.setDate=function(a){if(!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(b,c){this.minYear=b;this.maxYear=c};Calendar.prototype.callHandler=function(){if(this.onSelected){this.onSelected(this,this.date.print(this.dateFormat))}};Calendar.prototype.callCloseHandler=function(){if(this.onClose){this.onClose(this)}this.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}var a=Calendar.is_ie?Calendar.getElement(b):Calendar.getTargetElement(b);for(;a!=null&&a!=c.element;a=a.parentNode){}if(a==null){window._dynarch_popupCalendar.callCloseHandler();return Calendar.stopEvent(b)}};Calendar.prototype.show=function(){var e=this.table.getElementsByTagName("tr");for(var d=e.length;d>0;){var f=e[--d];Calendar.removeClass(f,"rowhilite");var c=f.getElementsByTagName("td");for(var b=c.length;b>0;){var a=c[--b];Calendar.removeClass(a,"hilite");Calendar.removeClass(a,"active")}}this.element.style.display="block";this.separator.style.display="block";this.hidden=false;if(this.isPopup){window._dynarch_popupCalendar=this;Calendar.addEvent(document,"keydown",Calendar._keyEvent);Calendar.addEvent(document,"keypress",Calendar._keyEvent);Calendar.addEvent(document,"mousedown",Calendar._checkCalendar)}this.hideShowCovered()};Calendar.prototype.hide=function(){if(this.isPopup){Calendar.removeEvent(document,"keydown",Calendar._keyEvent);Calendar.removeEvent(document,"keypress",Calendar._keyEvent);Calendar.removeEvent(document,"mousedown",Calendar._checkCalendar)}this.element.style.display="none";this.separator.style.display="none";this.hidden=true;this.hideShowCovered()};Calendar.prototype.showAt=function(a,c){var b=this.element.style;b.left=a+"px";b.top=c+"px";this.show()};Calendar.prototype.showAtElement=function(c,d){var a=this;var e=Calendar.getAbsolutePos(c);if(!d||typeof d!="string"){this.showAt(e.x,e.y+c.offsetHeight);return true}function b(i){if(i.x<0){i.x=0}if(i.y<0){i.y=0}var l=document.createElement("div");var h=l.style;h.position="absolute";h.right=h.bottom=h.width=h.height="0px";document.body.appendChild(l);var g=Calendar.getAbsolutePos(l);document.body.removeChild(l);if(Calendar.is_ie){g.y+=document.body.scrollTop;g.x+=document.body.scrollLeft}else{g.y+=window.scrollY;g.x+=window.scrollX}var f=i.x+i.width-g.x;if(f>0){i.x-=f}f=i.y+i.height-g.y;if(f>0){i.y-=f}}this.element.style.display="block";this.separator.style.display="block";Calendar.continuation_for_the_fucking_khtml_browser=function(){var f=a.element.offsetWidth;var i=a.element.offsetHeight;a.element.style.display="none";var g=d.substr(0,1);var l="l";if(d.length>1){l=d.substr(1,1)}switch(g){case"T":e.y-=i;break;case"B":e.y+=c.offsetHeight;break;case"C":e.y+=(c.offsetHeight-i)/2;break;case"t":e.y+=c.offsetHeight-i;break;case"b":break}switch(l){case"L":e.x-=f;break;case"R":e.x+=c.offsetWidth;break;case"C":e.x+=(c.offsetWidth-f)/2;break;case"l":e.x+=c.offsetWidth-f;break;case"r":break}e.width=f;e.height=i+40;b(e);e.y=e.y+4;a.showAt(e.x,e.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 b(p){var i=p.style.visibility;if(!i){if(document.defaultView&&typeof(document.defaultView.getComputedStyle)=="function"){if(!Calendar.is_khtml){i=document.defaultView.getComputedStyle(p,"").getPropertyValue("visibility")}else{i=""}}else{if(p.currentStyle){i=p.currentStyle.visibility}else{i=""}}}return i}var t=new Array("applet","iframe","select");var c=this.element;var a=Calendar.getAbsolutePos(c);var f=a.x;var d=c.offsetWidth+f;var s=a.y;var r=c.offsetHeight+s;for(var h=t.length;h>0;){var g=document.getElementsByTagName(t[--h]);var e=null;for(var m=g.length;m>0;){e=g[--m];a=Calendar.getAbsolutePos(e);var q=a.x;var o=e.offsetWidth+q;var n=a.y;var l=e.offsetHeight+n;if(this.hidden||(q>d)||(o<f)||(n>r)||(l<s)){if(!e.__msh_save_visibility){e.__msh_save_visibility=b(e)}e.style.visibility=e.__msh_save_visibility}else{if(!e.__msh_save_visibility){e.__msh_save_visibility=b(e)}e.style.visibility="hidden"}}}};Calendar.prototype._displayWeekdays=function(){var b=this.firstDayOfWeek;var a=this.firstdayname;var d=Calendar.getResourceLang("WEEKEND");for(k=1;(k<=this.monthsInRow)&&(a);++k){for(var c=0;c<7;++c){a.className=" day name";if(k==1&&c==0){Calendar.addClass(a,"month-left-border")}if((c==6)&&(k==this.monthsInRow)){Calendar.addClass(a,"month-right-border")}var e=(c+b)%7;if((!this.disableFdowClick)&&((this.params&&this.params.fdowClick)||c)){a.navtype=100;a.calendar=this;a.fdow=e}if((d!=null)&&(d.indexOf(e.toString())!=-1)){Calendar.addClass(a,"weekend")}a.innerHTML=Calendar.getResourceLang((c+b)%7,"sdn");a=a.nextSibling}if(this.weekNumbers&&a){a=a.nextSibling}}};Date._MD=new Array(31,28,31,30,31,30,31,31,30,31,30,31);Date.SECOND=1000;Date.MINUTE=60*Date.SECOND;Date.HOUR=60*Date.MINUTE;Date.DAY=24*Date.HOUR;Date.WEEK=7*Date.DAY;Date.parseDate=function(n,c){var o=new Date();var p=0;var e=-1;var l=0;var r=n.split(/\W+/);var q=c.match(/%./g);var h=0,g=0;var s=0;var f=0;for(h=0;h<r.length;++h){if(!r[h]){continue}switch(q[h]){case"%d":case"%e":l=parseInt(r[h],10);break;case"%m":e=parseInt(r[h],10)-1;break;case"%Y":case"%y":p=parseInt(r[h],10);(p<100)&&(p+=(p>29)?1900:2000);break;case"%b":case"%B":for(g=0;g<12;++g){if(Calendar._MN[g].substr(0,r[h].length).toLowerCase()==r[h].toLowerCase()){e=g;break}}break;case"%H":case"%I":case"%k":case"%l":s=parseInt(r[h],10);break;case"%P":case"%p":if(/pm/i.test(r[h])&&s<12){s+=12}else{if(/am/i.test(r[h])&&s>=12){s-=12}}break;case"%M":f=parseInt(r[h],10);break}}if(isNaN(p)){p=o.getFullYear()}if(isNaN(e)){e=o.getMonth()}if(isNaN(l)){l=o.getDate()}if(isNaN(s)){s=o.getHours()}if(isNaN(f)){f=o.getMinutes()}if(p!=0&&e!=-1&&l!=0){return new Date(p,e,l,s,f,0)}p=0;e=-1;l=0;for(h=0;h<r.length;++h){if(r[h].search(/[a-zA-Z]+/)!=-1){var u=-1;for(g=0;g<12;++g){if(Calendar._MN[g].substr(0,r[h].length).toLowerCase()==r[h].toLowerCase()){u=g;break}}if(u!=-1){if(e!=-1){l=e+1}e=u}}else{if(parseInt(r[h],10)<=12&&e==-1){e=r[h]-1}else{if(parseInt(r[h],10)>31&&p==0){p=parseInt(r[h],10);(p<100)&&(p+=(p>29)?1900:2000)}else{if(l==0){l=r[h]}}}}}if(p==0){p=o.getFullYear()}if(e!=-1&&l!=0){return new Date(p,e,l,s,f,0)}return o};Date.prototype.getMonthDays=function(b){var a=this.getFullYear();if(typeof b=="undefined"){b=this.getMonth()}if(((0==(a%4))&&((0!=(a%100))||(0==(a%400))))&&b==1){return 29}else{return Date._MD[b]}};Date.prototype.getDayOfYear=function(){var a=new Date(this.getFullYear(),this.getMonth(),this.getDate(),0,0,0);var c=new Date(this.getFullYear(),0,0,0,0,0);var b=a-c;return Math.floor(b/Date.DAY)};Date.prototype.getWeekNumber=function(){var c=new Date(this.getFullYear(),this.getMonth(),this.getDate(),0,0,0);var b=c.getDay();c.setDate(c.getDate()-(b+6)%7+3);var a=c.valueOf();c.setMonth(0);c.setDate(4);return Math.round((a-c.valueOf())/(7*86400000))+1};Date.prototype.equalsTo=function(a){return((this.getFullYear()==a.getFullYear())&&(this.getMonth()==a.getMonth())&&(this.getDate()==a.getDate())&&(this.getHours()==a.getHours())&&(this.getMinutes()==a.getMinutes()))};Date.prototype.setDateOnly=function(a){var b=new Date(a);this.setDate(1);this.setFullYear(b.getFullYear());this.setMonth(b.getMonth());this.setDate(b.getDate())};Date.prototype.print=function(o){var b=this.getMonth();var n=this.getDate();var p=this.getFullYear();var r=this.getWeekNumber();var t=this.getDay();var z={};var u=this.getHours();var c=(u>=12);var h=(c)?(u-12):u;var x=this.getDayOfYear();if(h==0){h=12}var e=this.getMinutes();var l=this.getSeconds();z["%a"]=Calendar._SDN[t];z["%A"]=Calendar._DN[t];z["%b"]=Calendar._SMN[b];z["%B"]=Calendar._MN[b];z["%C"]=1+Math.floor(p/100);z["%d"]=(n<10)?("0"+n):n;z["%e"]=n;z["%H"]=(u<10)?("0"+u):u;z["%I"]=(h<10)?("0"+h):h;z["%j"]=(x<100)?((x<10)?("00"+x):("0"+x)):x;z["%k"]=u;z["%l"]=h;z["%m"]=(b<9)?("0"+(1+b)):(1+b);z["%M"]=(e<10)?("0"+e):e;z["%n"]="\n";z["%p"]=c?"PM":"AM";z["%P"]=c?"pm":"am";z["%s"]=Math.floor(this.getTime()/1000);z["%S"]=(l<10)?("0"+l):l;z["%t"]="\t";z["%U"]=z["%W"]=z["%V"]=(r<10)?("0"+r):r;z["%u"]=t+1;z["%w"]=t;z["%y"]=(""+p).substr(2,2);z["%Y"]=p;z["%%"]="%";var v=/%./g;if(!Calendar.is_ie5&&!Calendar.is_khtml){return o.replace(v,function(a){return z[a]||a})}var q=o.match(v);for(var g=0;g<q.length;g++){var f=z[q[g]];if(f){v=new RegExp(q[g],"g");o=o.replace(v,f)}}return o};Date.prototype.__msh_oldSetFullYear=Date.prototype.setFullYear;Date.prototype.setFullYear=function(b){var a=new Date(this);a.__msh_oldSetFullYear(b);if(a.getMonth()!=this.getMonth()){this.setDate(28)}this.__msh_oldSetFullYear(b)};window._dynarch_popupCalendar=null;
