/*! Calendar.js v2.0.12 | (c) Bunoon | GNU AGPLv3 License */ function calendarJs(Hi,Ii,Ji){function Z(a,b,d){A=ud(a)?a:new Date;A.setDate(1);A.setHours(0,0,0,0);a=A;var e=new Date;ah=a.getFullYear()===e.getFullYear()&&a.getMonth()===e.getMonth();b=r(b)?b:!1;d=r(d)?d:!1;a=new Date(A.getFullYear(),A.getMonth(),1);a=0===a.getDay()?7:a.getDay();e=vd(A.getFullYear(),A.getMonth());wd()&&xd();da();if(!db){if(null===G){if(bh(ia)){var f=ia;ia=f.id;ja(ia)||(ia=ch())}else f=tb(ia);if(null!==f)if("input"!==f.tagName.toLowerCase()||"text"!==f.type&&"date"!==f.type)G=f, G.className="calendar",G.innerHTML=n.empty;else{var g=f;yd=g;ub(yd,"hidden");cc=k("input","calendar-date-picker-input");cc.readOnly=!0;cc.placeholder=c.selectDatePlaceholderText;t=!0;f=g.parentNode;f.removeChild(g);g=k("div","calendar-date-picker");f.appendChild(g);g.appendChild(yd);g.appendChild(cc);G=k("div","calendar calendar-hidden");G.id=ia;g.appendChild(G);cc.onclick=Ki;cc.onkeydown=Li;B.addEventListener("click",Ec);dh();g=yd.value.split("/");f=null;3===g.length&&(g=new Date(parseInt(g[2]), parseInt(g[1])-1,parseInt(g[0])),g instanceof Date&&!isNaN(g)&&(f=g));null===f?f=new Date:Vf(f);f.setHours(0,0,0,0);Ib=f}}if(null!==G){t||null!==Ra||(zd=k("div","side-menu-disabled-background"),zd.onclick=xd,G.appendChild(zd),Mi());Ni();Oi();Pi();Qi();g=null!==Jb;if(c.showDayNamesInMainDisplay)for(f=c.dayHeaderNames.length,g&&(Jb.innerHTML=n.empty),g||(Jb=k("div","row-cells header-days"),G.appendChild(Jb)),t&&(Jb.onclick=D),g=0;gf;f++){g=k("div","row-cells days");G.appendChild(g);Ad.push(g);for(var h=0;7>h;h++)if(-1f){e=1;a=new Date(A);a.setMonth(a.getMonth()+1);for(f+=1;43>f;f++)g=1===e,Xf(e,f,a.getMonth(),a.getFullYear(),!0,g),e++;e=vd(a.getFullYear(),a.getMonth());e=Math.round(e/2);Yf=new Date(a.getFullYear(),a.getMonth(),e)}else Yf=null; ra();b&&(null!==Aa||t||(Aa=k("div","disabled-background")),Si(),t||null!==Kb||(Kb=k("div","calendar-dialog event-editor-colors"),B.body.appendChild(Kb),b=k("div","title-bar"),y(b,c.selectColorsText),Kb.appendChild(b),Fc(b,Kb,null),w(b,"ib-close",c.closeTooltipText,ye,!0),b=k("div","contents"),Kb.appendChild(b),ka(b,c.backgroundColorText),Gc=k("input"),b.appendChild(Gc),ub(Gc,"color"),ka(b,c.textColorText),Hc=k("input"),b.appendChild(Hc),ub(Hc,"color"),ka(b,c.borderColorText),Ic=k("input"),b.appendChild(Ic), ub(Ic,"color"),a=k("div","buttons-container"),b.appendChild(a),sa(a,c.updateText,"update",Ti),sa(a,c.cancelText,"cancel",ye)),t||null!==Lb||(Lb=k("div","calendar-dialog event-editor-repeat-options"),B.body.appendChild(Lb),b=k("div","title-bar"),y(b,c.repeatOptionsTitle),Lb.appendChild(b),Fc(b,Lb,null),w(b,"ib-close",c.closeTooltipText,ze,!0),b=k("div","contents"),Lb.appendChild(b),ka(b,c.daysToExcludeText),Ae=M(b,c.dayNames[0])[0],Be=M(b,c.dayNames[1])[0],Ce=M(b,c.dayNames[2])[0],De=M(b,c.dayNames[3])[0], Ee=M(b,c.dayNames[4])[0],Fe=M(b,c.dayNames[5])[0],Ge=M(b,c.dayNames[6])[0],ka(b,c.repeatEndsText),dc=k("input"),b.appendChild(dc),ub(dc,"date"),a=k("div","buttons-container"),b.appendChild(a),sa(a,c.updateText,"update",Ui),sa(a,c.cancelText,"cancel",ze)),t||null!==ec||(ec=k("div","calendar-dialog message"),B.body.appendChild(ec),Zf=k("div","title-bar"),ec.appendChild(Zf),b=k("div","contents"),ec.appendChild(b),$f=k("div","text"),b.appendChild($f),a=M(b,c.removeAllEventsInSeriesText),He=a[0],ag=a[1], a=k("div","buttons-container"),b.appendChild(a),fc=k("input","yes-ok","button"),fc.value=c.yesText,a.appendChild(fc),gc=k("input","no","button"),gc.value=c.noText,a.appendChild(gc)),t||null!==Mb||(Mb=k("div","calendar-dialog export-events"),B.body.appendChild(Mb),b=k("div","title-bar"),y(b,c.exportEventsTitle),Mb.appendChild(b),Fc(b,Mb,null),w(b,"ib-close",c.closeTooltipText,Ie,!0),b=k("div","contents"),Mb.appendChild(b),Fa=k("input",null,"text"),Fa.placeholder=c.exportFilenamePlaceholderText,b.appendChild(Fa), a=k("div","split"),b.appendChild(a),e=k("div","radio-buttons-container split-contents"),a.appendChild(e),f=k("div","radio-buttons-container split-contents"),a.appendChild(f),bg=S(e,"CSV","ExportType"),hh=S(e,"XML","ExportType"),ih=S(e,"JSON","ExportType"),jh=S(e,"TEXT","ExportType"),kh=S(f,"iCAL","ExportType"),lh=S(f,"MD","ExportType"),mh=S(f,"HTML","ExportType"),nh=S(f,"TSV","ExportType"),a=k("div","buttons-container"),b.appendChild(a),sa(a,c.exportText,"export",Vi),sa(a,c.cancelText,"cancel",Ie)), Wi(),Xi(),Yi(),t||(Zi(),$i(),aj(),bj()));d&&ta(!0,!1);null!==G&&(cg.innerText=oh(c.monthTitleBarDateFormat,A))}function Jc(){var a=[];Sa(function(b){a.push(b)});return a}function Sa(a){for(var b in Ja)if(Ja.hasOwnProperty(b))for(var d in Ja[b])if(Ja[b].hasOwnProperty(d)){var e=ph(Ja[b][d]);if(a(e,b,d))return}}function Nb(a,b){b=r(b)?b:!0;a=a.sort(function(d,e){return d.from-e.from});b&&(a=a.sort(function(d,e){return qh(e.isAllDay)-qh(d.isAllDay)}));return a}function dg(a,b){vb(B.body,Aa);var d=function(){Ka(B.body, Aa)};Je(c.confirmEventsRemoveTitle,c.confirmEventsRemoveMessage,function(){d();Sa(function(e){I(e.repeatEvery)===x.never&&b(e.from,a)&&qa.removeEvent(e.id,!1)});ta()},d)}function Qi(){Ke=Bd=eg=null;var a=null!==V;a&&(V.innerHTML=n.empty);a||(V=k("div","header-date"),G.appendChild(V));c.fullScreenModeEnabled&&(V.ondblclick=eb);t&&(V.onclick=function(b){D(b);da()});t||(w(V,"ib-hamburger",c.showMenuTooltipText,Cd),a=k("div","side-menu-button-divider-line"),V.appendChild(a));w(V,"ib-arrow-left-full", c.previousMonthTooltipText,Dd);t&&c.addYearButtonsInDatePickerMode&&w(V,"ib-rewind",c.previousYearTooltipText,Le);(t||c.showExtraToolbarButtons)&&w(V,"ib-pin",c.currentMonthTooltipText,Me);c.showExtraToolbarButtons&&(w(V,"ib-refresh",c.refreshTooltipText,function(){ta(!0,!0)}),u.enabled&&(Ke=w(V,"ib-search",c.searchTooltipText,Ed)));w(V,"ib-arrow-right-full",c.nextMonthTooltipText,Fd);t&&c.addYearButtonsInDatePickerMode&&w(V,"ib-forward",c.nextYearTooltipText,Ne);t&&w(V,"ib-close",c.closeTooltipText, Ec);c.showExtraToolbarButtons&&(c.manualEditingEnabled&&w(V,"ib-plus",c.addEventTooltipText,Kc),c.exportEventsEnabled&&(eg=w(V,"ib-arrow-down-full-line",c.exportEventsTooltipText,function(){Lc(Mc)})));t||(w(V,"ib-eye",c.listAllEventsTooltipText,function(){rh(!0)}),w(V,"ib-hamburger-side",c.listWeekEventsTooltipText,function(){Nc(null,!0)}));c.showExtraToolbarButtons&&c.fullScreenModeEnabled&&(Bd=w(V,"ib-arrow-expand-left-right",c.enableFullScreenTooltipText,eb));a=k("div","title-container");V.appendChild(a); cj(a);dj(a)}function Ri(a,b){var d=c.dayHeaderNames[b],e=k("div",eh());y(e,d);a.appendChild(e);e.oncontextmenu=function(f){sh(f,b)};e.ondblclick=function(f){if(!t){var g=!1;if(0===hc.length){if(f=c.visibleDays.length,1a;a++){var e=-1c.maximumYear););}function fj(a){var b=k("div");b.className="year";b.innerText=a.toString();b.id="year-selected-"+a.toString(); Ue.appendChild(b);b.ondblclick=D;b.onclick=function(d){D(d);A.getFullYear()!==a&&(A.setFullYear(a),Z(A),sg())}}function ej(a){D(a);"block"!==gb.style.display?(da(),gb.style.display="block",Te.className="ib-arrow-up-full-medium",a=gj(),Ue.scrollTop=null!==a?a.offsetTop-gb.offsetHeight/2:0):sg()}function gj(){var a=gb.getElementsByClassName("year"),b=a.length;if(1<=b)for(var d=0;da.getDay()-1?6:a.getDay()-1}function vd(a,b){return(new Date(a,b+1,0)).getDate()}function wg(a){var b=c.thText;if(31===a||21===a||1===a)b=c.stText;else if(22===a||2===a)b=c.ndText;else if(23===a||3===a)b=c.rdText; return b}function xg(a){var b=a.getHours();a=a.getMinutes();return 60*b+a}function Ob(a,b){var d=new Date(a.getFullYear(),a.getMonth(),a.getDate()),e=new Date(b.getFullYear(),b.getMonth(),b.getDate());return Math.ceil(Math.abs(e-d)/864E5)}function Na(a,b){b=xa(b)?b:1;a.setDate(a.getDate()+b)}function ib(a,b){b=xa(b)?b:1;a.setDate(a.getDate()+7*b)}function Yc(a,b){b=xa(b)?b:1;a.setMonth(a.getMonth()+b)}function lc(a,b){b=xa(b)?b:1;a.setFullYear(a.getFullYear()+b)}function Pb(a,b){var d=[],e=Math.abs(b- a)/1E3,f=Math.floor(e/86400);e-=86400*f;0=g.toString().length&&(d=g);!isNaN(f)&&2>=f.toString().length&&(e=f)}a.setHours(d);a.setMinutes(e)}function $c(a,b){return new Date(a.getTime()+6E4*b)}function oh(a,b){var d=a,e=Ma(b);d=d.replace("{dddd}",c.dayNames[e]);d=d.replace("{ddd}",c.dayNamesAbbreviated[e]);d=d.replace("{dd}",N(b.getDate()));d=d.replace("{d}",b.getDate());d=d.replace("{o}",wg(b.getDate()));d=d.replace("{mmmm}",c.monthNames[b.getMonth()]); d=d.replace("{mmm}",c.monthNamesAbbreviated[b.getMonth()]);d=d.replace("{mm}",N(b.getMonth()+1));d=d.replace("{m}",b.getMonth()+1);d=d.replace("{yyyy}",b.getFullYear());d=d.replace("{yyy}",b.getFullYear().toString().substring(1));d=d.replace("{yy}",b.getFullYear().toString().substring(2));return d=d.replace("{y}",parseInt(b.getFullYear().toString().substring(2)).toString())}function ra(){for(var a=0;6>a;a++)for(var b=0;7>b;b++){var d=tb("calendar-day-"+(7*a+(b+1)));null!==d&&(Qb(d,"event"),Qb(d,"plus-x-events"))}Gh(); Mc=[];a=Nb(Jc());b=a.length;for(d=0;dx.never&&(f===x.everyDay?yb(e,Na,1):f===x.everyWeek?yb(e,ib,1):f===x.every2Weeks?yb(e,ib,2):f===x.everyMonth?yb(e,Yc,1):f===x.everyYear?yb(e,lc,1):f===x.custom&&(f=I(e.repeatEveryCustomType),g=I(e.repeatEveryCustomValue),0=c.maximumEventsPerDayDisplay||c.useOnlyDotEventsForMainDisplay){e=k("div","event");var g=b.title;e.setAttribute("event-type",I(b.type));e.setAttribute("event-id",b.id);c.showTimesInMainCalendarEvents&&!b.isAllDay&&b.from.getDate()===b.to.getDate()&&(g=Ld(b.from,b.to)+": "+g);if(c.useOnlyDotEventsForMainDisplay)e.className+=" event-circle";else{if(I(b.repeatEvery)>x.never){var h=k("div","ib-refresh-small ib-no-hover ib-no-active");h.style.borderColor=e.style.color; e.appendChild(h)}e.innerHTML+=bd(g)}d.appendChild(e);zg(e,b,a,d);df(e,b,Ag(b,a),c.applyCssToEventsNotInCurrentMonth);ef(e,b);pa(b.from,a)&&(e.id="day-"+b.id);e.onmousemove=function(l){null!==Md&&Md.id===b.id?D(l):Ih(l,b)};e.oncontextmenu=function(l){ff(l,b,f)};e.addEventListener("click",function(l){gf(l,b)});Xa("onEventClick")&&e.addEventListener("click",function(){z("onEventClick",b)});c.manualEditingEnabled?e.ondblclick=function(l){D(l);U(b)}:Xa("onEventDoubleClick")&&(e.ondblclick=function(){z("onEventDoubleClick", b)})}else pj(d,a)}function pj(a,b){var d=a.getElementsByClassName("plus-x-events");d=0x.never&&(d=new Date(b),d.setHours(e.getHours(),e.getMinutes()),e=d);return e}function Pi(){if(!t){var a=null!==ma;a&&(ma.innerHTML= n.empty);a||(ma=k("div","full-day-view"),G.appendChild(ma));a=k("div","title-bar");ma.appendChild(a);c.fullScreenModeEnabled&&(a.ondblclick=eb);Nd=k("div","title");a.appendChild(Nd);w(a,"ib-arrow-right-full",c.nextDayTooltipText,rj);w(a,"ib-close",c.closeTooltipText,sj);c.manualEditingEnabled&&c.showExtraToolbarButtons&&w(a,"ib-plus",c.addEventTooltipText,function(){if(c.useTemplateWhenAddingNewEvent){var e=oc(J,J);U(e);pc()}else Kc()});if(!t){w(a,"ib-hamburger",c.showMenuTooltipText,Cd);var b=k("div", "side-menu-button-divider-line");a.appendChild(b)}w(a,"ib-arrow-left-full",c.previousDayTooltipText,tj);c.exportEventsEnabled&&c.showExtraToolbarButtons&&(Kh=w(a,"ib-arrow-down-full-line",c.exportEventsTooltipText,function(){Lc(Ua)}));c.showExtraToolbarButtons&&(Lh=w(a,"ib-pin",c.todayTooltipText,uj),w(a,"ib-refresh",c.refreshTooltipText,function(){ta(!0,!0)}),u.enabled&&(Mh=w(a,"ib-search",c.searchTooltipText,Ed)),c.fullScreenModeEnabled&&(Oe=w(a,"ib-arrow-expand-left-right",c.enableFullScreenTooltipText, eb)));Ya=k("div","contents custom-scroll-bars");ma.appendChild(Ya);Ya.oncontextmenu=function(e){var f=Nh(e);hf=N(f[0])+":"+N(f[1]);null!==Da&&(aa(e)||xb(),null!==jf&&(f=0a;a++){b=k("div","hour");ca.appendChild(b);var d=k("div","hour-text");d.innerText=N(a)+":00";b.appendChild(d);d=k("div","hour-text");d.innerText=N(a)+":30";b.appendChild(d)}zb=k("div","time-arrow");ca.appendChild(zb);zb.appendChild(k("div","arrow-left"));zb.appendChild(k("div","line"))}}function vj(a){c.manualEditingEnabled&&(a=Nh(a),c.useTemplateWhenAddingNewEvent?(a= N(a[0])+":"+N(a[1]),a=oc(J,J,a,a),U(a),pc()):U(null,J,a))}function Sb(a,b){b=r(b)?b:!1;var d=Ma(new Date);d=-1x.never&&(q===x.everyDay?Ab(p,e,a,Na,1):q===x.everyWeek? Ab(p,e,a,ib,1):q===x.every2Weeks?Ab(p,e,a,ib,2):q===x.everyMonth?Ab(p,e,a,Yc,1):q===x.everyYear?Ab(p,e,a,lc,1):q===x.custom&&(q=I(p.repeatEveryCustomType),v=I(p.repeatEveryCustomValue),0=qc.offsetHeight&& (qc.style.display="none");c.exportEventsEnabled&&jb(Kh,0x.never){var h=k("div","ib-refresh-medium ib-no-hover ib-no-active");h.style.borderColor=g.style.color;e.appendChild(h)}e.innerHTML+=bd(a.title);g.appendChild(e);if(!a.isAllDay||c.showAllDayEventDetailsInFullDayView)e=k("div","date"),g.appendChild(e),h=k("div","duration"),g.appendChild(h),a.from.getDate()===a.to.getDate()? a.isAllDay?y(e,c.allDayText):(y(e,Ld(a.from,a.to)),y(h,Pb(a.from,a.to))):(kf(e,a.from,a.to),y(h,Pb(a.from,a.to))),h.innerHTML===n.empty&&g.removeChild(h),xa(a.repeatEvery)&&a.repeatEvery>x.never&&(e=k("div","repeats"),y(e,c.repeatsText.replace(":",n.empty)+n.space+cd(a.repeatEvery)),g.appendChild(e)),Oa(a.location)&&(e=k("div","location"),y(e,a.location),g.appendChild(e)),Oa(a.description)&&(e=k("div","description"),y(e,a.description),g.appendChild(e));g.addEventListener("click",function(l){gf(l, a)});Xa("onEventClick")&&g.addEventListener("click",function(){z("onEventClick",a)});c.manualEditingEnabled?g.ondblclick=function(l){D(l);U(a)}:Xa("onEventDoubleClick")&&(g.ondblclick=function(){z("onEventDoubleClick",a)});a.isAllDay||(d=zj(b,g,a));Ua.push(a);a.isAllDay||Vc.push({eventDetails:a,eventElement:g,height:g.offsetHeight})}return d}function zj(a,b,d){var e=ca.offsetHeight,f=ca.offsetHeight/1440,g=c.spacing,h=null;if(!d.isAllDay){h=I(d.repeatEvery);if(pa(d.from,a)||h>x.never)g=f*xg(d.from); h=pa(d.to,a)||h>x.never?f*xg(d.to)-g:e;h-=2*c.spacing}b.style.top=g+"px";null!==h&&(b.style.height=h+"px");b.offsetTop+b.offsetHeight>e-c.spacing&&(b.style.height=e-b.offsetTop-3*c.spacing+"px");a=g+Ya.offsetHeight/2;a<=Ya.offsetHeight&&(a=0);return a}function tj(){J.setDate(J.getDate()-1);if(7>c.visibleDays.length)for(var a=Ma(J);-1===c.visibleDays.indexOf(a);)J.setDate(J.getDate()-1),a=Ma(J);Sb(J,!0)}function rj(){Na(J);if(7>c.visibleDays.length)for(var a=Ma(J);-1===c.visibleDays.indexOf(a);)Na(J), a=Ma(J);Sb(J,!0)}function uj(){J=new Date;Sb(J,!0)}function Nh(a){var b=Fg(ca);a=Math.floor((a.pageY-b.top)/(ca.offsetHeight/1440))/60;b=Math.floor(a);return[b,Math.round(60*(a-b))]}function wj(a){D(a);if(null===Pd)0===a.dataTransfer.files.length?Rh(a,J.getFullYear(),J.getMonth(),J.getDate()):Sh(a);else{var b=ca.offsetHeight/1440,d=Fg(ca);a=Math.abs(a.pageY)-d.top+Gg;b=(a-Pd.offsetTop)/b;Pd.style.top=a+"px";sc.from=$c(sc.from,b);sc.to=$c(sc.to,b);z("onEventUpdated",sc);sc=Pd=null;Gg=0;ta()}}function Qh(){$e(); c.manualEditingEnabled&&Uc(Ca.fullDayEventSizeTracking,function(){var a=Vc.length;if(0E+ea||l+qv+Tb)h=!1;h&&(h=C(e.getAttribute("event-position")),l=C(g.getAttribute("event-position")),h===n.empty&&l===n.empty?(lf(e),lf(g),g.style.left=e.offsetLeft+e.offsetWidth+c.spacing+"px",e.setAttribute("event-position","left"),g.setAttribute("event-position", "right")):h===n.empty&&"right"===l?(lf(e),e.setAttribute("event-position","left"),g.setAttribute("event-position","right")):h===n.empty&&"left"===l&&(e.style.left=g.offsetLeft+g.offsetWidth+c.spacing+"px",lf(e),e.setAttribute("event-position","right"),g.setAttribute("event-position","left")))}}}function lf(a){a.style.width=a.offsetWidth/2-(3*c.spacing+c.spacing/4)+"px"}function Aj(a,b){var d=0;a.offsetTopb.offsetTop&&(d=1);return d}function Ph(){var a=0;null!==zb&&(Xc(J)&& W(ma)&&c.showTimelineArrowOnFullDayView?(a=ca.offsetHeight/1440*xg(new Date),zb.style.display="block",zb.style.top=a-zb.offsetHeight/2+"px"):zb.style.display="none");return a}function Ni(){if(!t){var a=null!==oa;a&&(oa.innerHTML=n.empty);a||(oa=k("div","list-all-events-view"),G.appendChild(oa));a=k("div","title-bar");oa.appendChild(a);c.fullScreenModeEnabled&&(a.ondblclick=eb);var b=k("div","title");y(b,c.allEventsText);a.appendChild(b);w(a,"ib-close",c.closeTooltipText,function(){Va=[];nc(oa)}); c.showExtraToolbarButtons&&(c.manualEditingEnabled&&w(a,"ib-plus",c.addEventTooltipText,Kc),c.exportEventsEnabled&&(Th=w(a,"ib-arrow-down-full-line",c.exportEventsTooltipText,function(){Lc(Va)})),t||(w(a,"ib-hamburger",c.showMenuTooltipText,Cd),b=k("div","side-menu-button-divider-line"),a.appendChild(b)),w(a,"ib-refresh",c.refreshTooltipText,function(){ta(!0,!0)}),u.enabled&&(Uh=w(a,"ib-search",c.searchTooltipText,Ed)),c.fullScreenModeEnabled&&(Pe=w(a,"ib-arrow-expand-left-right",c.enableFullScreenTooltipText, eb)));dd=k("div","contents custom-scroll-bars");oa.appendChild(dd)}}function rh(a){a=r(a)?a:!1;Eg(oa);dd.innerHTML=n.empty;Va=[];Ye=[];a&&(dd.scrollTop=0);a=Nb(Jc());for(var b=a.length,d=0;dx.never){var e=k("div","ib-refresh-medium ib-no-hover ib-no-active");e.style.borderColor=d.style.color;b.appendChild(e)}b.innerHTML+=bd(a.title);d.appendChild(b);b=k("div","date");d.appendChild(b);e=k("div","duration");d.appendChild(e);a.from.getDate()===a.to.getDate()?a.isAllDay?mf(b,a.from,null," - "+c.allDayText):(mf(b,a.from,null," - "+Ld(a.from,a.to)),y(e,Pb(a.from,a.to))):(kf(b,a.from,a.to),y(e,Pb(a.from,a.to)));e.innerHTML===n.empty&&d.removeChild(e); xa(a.repeatEvery)&&a.repeatEvery>x.never&&(b=k("div","repeats"),y(b,c.repeatsText.replace(":",n.empty)+n.space+cd(a.repeatEvery)),d.appendChild(b));Oa(a.location)&&(b=k("div","location"),y(b,a.location),d.appendChild(b));Oa(a.description)&&(b=k("div","description"),y(b,a.description),d.appendChild(b));d.addEventListener("click",function(f){gf(f,a)});Xa("onEventClick")&&d.addEventListener("click",function(){z("onEventClick",a)});c.manualEditingEnabled?d.ondblclick=function(f){D(f);U(a)}:Xa("onEventDoubleClick")&& (d.ondblclick=function(){z("onEventDoubleClick",a)});Va.push(a)}}function Cj(a){var b="month-"+a.getMonth()+"-"+a.getFullYear(),d=tb(b);if(null===d){var e=new Date(a),f=function(){Va=[];nc(oa);Z(e)},g=k("div","month");dd.appendChild(g);var h=k("div","header");y(h,c.monthNames[a.getMonth()]+n.space+a.getFullYear());h.ondblclick=f;g.appendChild(h);w(h,"ib-arrow-expand-left-right",c.expandMonthTooltipText,f);if(c.manualEditingEnabled){var l=new Date(a.getFullYear(),a.getMonth(),1);w(h,"ib-plus",c.addEventTooltipText, function(){if(c.useTemplateWhenAddingNewEvent){var q=oc(l,l);U(q);pc()}else U(null,l)})}c.manualEditingEnabled&&w(h,"ib-close",c.removeEventsTooltipText,function(){dg(e,nj)});f=function(){var q=p,v=d;"none"!==v.style.display?(v.style.display="none",q.className="ib-square-hollow",L.visibleAllEventsMonths[b]=!1,ua(q,c.restoreTooltipText)):(v.style.display="block",q.className="ib-minus",L.visibleAllEventsMonths[b]=!0,ua(q,c.minimizedTooltipText))};var p=w(h,"ib-minus",c.minimizedTooltipText,f);Ye.push(f); d=k("div","events");d.id=b;g.appendChild(d);L.visibleAllEventsMonths.hasOwnProperty(b)&&!L.visibleAllEventsMonths[b]&&(d.style.display="none",p.className="ib-square-hollow",ua(p,c.restoreTooltipText));nf(d,a.getFullYear(),a.getMonth(),a.getDate())}return d}function Oi(){if(!t){var a=null!==wa;a&&(wa.innerHTML=n.empty);a||(wa=k("div","list-all-week-events-view"),G.appendChild(wa));a=k("div","title-bar");wa.appendChild(a);c.fullScreenModeEnabled&&(a.ondblclick=eb);Za=k("div","title");a.appendChild(Za); w(a,"ib-arrow-right-full",c.nextWeekTooltipText,Dj);w(a,"ib-close",c.closeTooltipText,function(){Wa=[];nc(wa)});c.manualEditingEnabled&&c.showExtraToolbarButtons&&w(a,"ib-plus",c.addEventTooltipText,Kc);if(!t){w(a,"ib-hamburger",c.showMenuTooltipText,Cd);var b=k("div","side-menu-button-divider-line");a.appendChild(b)}w(a,"ib-arrow-left-full",c.previousWeekTooltipText,Ej);c.showExtraToolbarButtons&&(c.exportEventsEnabled&&(Wh=w(a,"ib-arrow-down-full-line",c.exportEventsTooltipText,function(){Lc(Wa)})), w(a,"ib-pin",c.thisWeekTooltipText,Fj),w(a,"ib-refresh",c.refreshTooltipText,function(){ta(!0,!0)}),u.enabled&&(Xh=w(a,"ib-search",c.searchTooltipText,Ed)),c.fullScreenModeEnabled&&(Qe=w(a,"ib-arrow-expand-left-right",c.enableFullScreenTooltipText,eb)));ed=k("div","contents custom-scroll-bars");wa.appendChild(ed)}}function Nc(a,b){b=r(b)?b:!1;Eg(wa);ed.innerHTML=n.empty;fd={};of={};Qd={};Wa=[];Ze=[];Bb=null===a?new Date:new Date(a);b&&(ed.scrollTop=0);var d=a;d=r(d)?d:new Date;var e=0===d.getDay()? 7:d.getDay();e=d.getDate()-e+1;var f=e+6,g=new Date(d);d=new Date(d);g.setDate(e);g.setHours(0,0,0,0);d.setDate(f);d.setHours(23,59,59,99);e=[g,d];d=e[0];e=e[1];f=new Date(d);do Hg(f),Na(f);while(f=d&&q<=e){var ea=Hg(q),Tb=ea[0];ea=ea[1];null!==Tb&&null!==ea&&Yh(l,ea,Tb,q)&&(v=!0)}Na(q)}v&&Wa.push(l);q=I(l.repeatEvery);p=!1;q>x.never&&(q===x.everyDay?p=Cb(l,d,e,Na,1):q===x.everyWeek?p=Cb(l,d,e,ib,1):q===x.every2Weeks?p=Cb(l,d,e,ib,2):q===x.everyMonth?p=Cb(l,d,e,Yc,1):q===x.everyYear?p=Cb(l,d,e,lc,1):q===x.custom&&(q=I(l.repeatEveryCustomType), E=I(l.repeatEveryCustomValue),0=b&&g<=d){var q=Hg(g);p=q[0];q=q[1];null!==p&&null!==q&&(Yh(a,q,p,g),l=!0)}}return l}function Yh(a,b,d,e){var f=!1,g=Ma(e)+e.getMonth()+e.getFullYear(),h=Rb(a.seriesIgnoreDates),l=vg(e);ad(a)&&-1===h.indexOf(l)&&(Qb(d,"no-events-text"),qj(b,"ib-close"),b=k("div","event"),b.setAttribute("event-type",I(a.type)),b.setAttribute("event-id",a.id),d.appendChild(b),Qd[g].push(b),b.oncontextmenu=function(p){ff(p,a,l)},zg(b,a,e,d), df(b,a,Ag(a,e)),ef(b,a),pa(a.from,e)&&(b.id="week-day-"+a.id),d=k("div","title"),I(a.repeatEvery)>x.never&&(e=k("div","ib-refresh-medium ib-no-hover ib-no-active"),e.style.borderColor=b.style.color,d.appendChild(e)),d.innerHTML+=bd(a.title),b.appendChild(d),d=k("div","date"),b.appendChild(d),e=k("div","duration"),b.appendChild(e),a.from.getDate()===a.to.getDate()?a.isAllDay?y(d,c.allDayText):(y(d,Ld(a.from,a.to)),y(e,Pb(a.from,a.to))):(kf(d,a.from,a.to),y(e,Pb(a.from,a.to))),e.innerHTML===n.empty&& b.removeChild(e),xa(a.repeatEvery)&&a.repeatEvery>x.never&&(d=k("div","repeats"),y(d,c.repeatsText.replace(":",n.empty)+n.space+cd(a.repeatEvery)),b.appendChild(d)),Oa(a.location)&&(d=k("div","location"),y(d,a.location),b.appendChild(d)),Oa(a.description)&&(d=k("div","description"),y(d,a.description),b.appendChild(d)),b.addEventListener("click",function(p){gf(p,a)}),Xa("onEventClick")&&b.addEventListener("click",function(){z("onEventClick",a)}),c.manualEditingEnabled?b.ondblclick=function(p){D(p); U(a)}:Xa("onEventDoubleClick")&&(b.ondblclick=function(){z("onEventDoubleClick",a)}),f=!0);return f}function Hg(a){var b=Ma(a),d=b+a.getMonth()+a.getFullYear(),e=null,f=null,g=new Date(a);if(!fd.hasOwnProperty(d)&&-1l&&(h=l));var p=Ob(Y.from,gd);l=Ob(Y.from,Y.to);g=new Date(b,d,h,Y.from.getHours(),Y.from.getMinutes());h=new Date(b,d,h,Y.to.getHours(),Y.to.getMinutes());var q=Y.repeatEnds;0Y.from?q.setDate(q.getDate()+p):q.setDate(q.getDate()-p));0x.never&&null!==be;Je(c.confirmEventRemoveTitle,c.confirmEventRemoveMessage,function(){a();r(Pa.id)&&(He.checked||null===be?qa.removeEvent(Pa.id,!0):(za(Pa.seriesIgnoreDates)?Pa.seriesIgnoreDates.push(be):Pa.seriesIgnoreDates=[be],ra()),la())},a,b)}),$d=Ha(T));Lg=na(T,"ib-arrow-top-right-icon",c.openUrlText,function(){Mg(Pa.url)}); c.exportEventsEnabled&&(uf=Ha(T),tf=na(T,"ib-arrow-down-full-line-icon",c.exportEventsTooltipText+"...",function(){Lc(ya)}))}function aj(){null!==Da&&(Ka(B.body,Da),jf=Bg=Dg=Cg=Da=null);c.manualEditingEnabled&&(Da=k("div","calendar-drop-down-menu"),B.body.appendChild(Da),na(Da,"ib-plus-icon",c.addEventTitle+"...",function(){if(c.useTemplateWhenAddingNewEvent){var a=oc(J,J,hf,hf);U(a);pc()}else U(null,J,hf)},!0),Cg=Ha(Da),Dg=na(Da,"ib-close-icon",c.removeEventsTooltipText,function(){dg(J,pa)}),Bg= Ha(Da),jf=na(Da,"ib-circle-icon",c.pasteText,function(){ug(J,hb)}))}function bj(){null===Ta&&(Ta=k("div","calendar-drop-down-menu"),B.body.appendChild(Ta),bi=na(Ta,"ib-close-icon",c.hideDayText,function(){c.visibleDays.splice(c.visibleDays.indexOf(ci),1);db=!1;z("onOptionsUpdated",c);Z(A,!0,!0)},!0),di=Ha(Ta),ei=na(Ta,"ib-rhombus-hollow-icon",c.showOnlyWorkingDaysText,function(){1<=c.workingDays.length&&(c.visibleDays=[].slice.call(c.workingDays),db=!1,z("onOptionsUpdated",c),Z(A,!0,!0))}),fi=Ha(Ta), na(Ta,"ib-octagon-hollow-icon",c.visibleDaysText+"...",Cd))}function na(a,b,d,e,f){f=r(f)?f:!1;var g=k("div","item");a.appendChild(g);g.appendChild(k("div",b));a=k("div","menu-text");y(a,d);g.appendChild(a);f&&(a.className+=" bold");g.onclick=function(){e()};return g}function Ha(a){var b=k("div","separator");a.appendChild(b);return b}function ff(a,b,d){if(null!==T){var e=C(b.url),f=rf(b);aa(a)||xb();Pa=b;be=r(d)?d:null;1e&&Zc(d,Ia);a||(e>d||ea.length)le(c.fromTimeErrorMessage);else if(2>b.length)le(c.toTimeErrorMessage);else if(d===n.empty)le(c.titleErrorMessage);else if(0f&&(d=1);return d})}function Rj(a){D(a);if("block"!==$a.style.display){si();a=u.history.length;$a.innerHTML=n.empty;ba.focus();for(var b=0;b< a;b++)ti(u.history[b],0);ui()}else Xe()}function ti(a,b){var d=k("div","history-dropdown-item");$a.appendChild(d);var e=k("span","search-search");y(e,a.substring(0,b));d.appendChild(e);e=k("span");y(e,a.substring(b));d.appendChild(e);d.onclick=function(f){D(f);Xe();ba.value=a;ba.selectionStart=ba.selectionEnd=ba.value.length;ba.focus();pd(!1)}}function Xe(){null!==$a&&($a.style.display="none",qb.className="ib-arrow-down-full")}function ui(){null!==$a&&($a.style.display="block",qb.className="ib-arrow-up-full")} function Xi(){if(!t&&null===fb){fb=k("div","calendar-dialog configuration");B.body.appendChild(fb);var a=k("div","title-bar");y(a,c.configurationTitleText);fb.appendChild(a);Fc(a,fb,null);w(a,"ib-close",c.closeTooltipText,vi,!0);a=k("div","contents");fb.appendChild(a);var b=hi(a);kd(b,c.displayTabText,function(d){ld(d,Hb,fb)},!0);kd(b,c.organizerTabText,function(d){ld(d,rd,fb)});Hb=md(a,!0,!1);rd=md(a,!1,!1);fg=M(Hb,c.enableAutoRefreshForEventsText)[0];gg=M(Hb,c.enableBrowserNotificationsText,null, null,null,"checkbox-tabbed-in")[0];hg=M(Hb,c.enableTooltipsText,null,null,null,"checkbox-tabbed-down")[0];ig=M(Hb,c.enableDragAndDropForEventText)[0];jg=M(Hb,c.enableDayNameHeadersInMainDisplayText)[0];kg=M(Hb,c.showEmptyDaysInWeekViewText)[0];lg=M(Hb,c.showHolidaysInTheDisplaysText)[0];ka(rd,c.organizerNameText);Re=k("input",null,"text");rd.appendChild(Re);ka(rd,c.organizerEmailAddressText);Se=k("input",null,"email");rd.appendChild(Se);b=k("div","buttons-container");a.appendChild(b);sa(b,c.updateText, "update",Tj);sa(b,c.cancelText,"cancel",vi)}}function Tj(){fg.checked?qa.startTheAutoRefreshTimer():qa.stopTheAutoRefreshTimer();c.eventNotificationsEnabled=gg.checked;c.tooltipsEnabled=hg.checked;c.dragAndDropForEventsEnabled=ig.checked;c.showDayNamesInMainDisplay=jg.checked;c.showEmptyDaysInWeekView=kg.checked;c.showHolidays=lg.checked;c.organizerName=Re.value;c.organizerEmailAddress=Se.value;db=!1;z("onOptionsUpdated",c);Sg();mg();Z(A,!0,!0)}function vi(){mg()}function mg(a){me(a);Ka(B.body,Aa); fb.style.display="none"}function ad(a){var b=C(a.group),d=b.toLowerCase();a=I(a.type);var e=!0;b!==n.empty?r(L.visibleGroups)&&(e=-1x.never){var f=k("div","ib-refresh-medium ib-no-hover ib-no-active");f.style.borderColor=Ac.style.color;Ac.appendChild(f)}Ac.innerHTML+=bd(b.title);xa(b.repeatEvery)&& b.repeatEvery>x.never?(y(te,c.repeatsText.replace(":",n.empty)+n.space+cd(b.repeatEvery)),vb(O,te)):(te.innerHTML=n.empty,Ka(O,te));Oa(b.location)?(y(ve,b.location),vb(O,ve)):(ve.innerHTML=n.empty,Ka(O,ve));Oa(b.description)?(y(ue,b.description),vb(O,ue)):(ue.innerHTML=n.empty,Ka(O,ue));b.from.getDate()===b.to.getDate()?b.isAllDay?y(se,c.allDayText):(y(se,Ld(b.from,b.to)),y(Bc,Pb(b.from,b.to))):(kf(se,b.from,b.to),y(Bc,Pb(b.from,b.to)));Bc.innerHTML===n.empty&&O.removeChild(Bc)}Od(a,O)}},c.eventTooltipDelay, !1)}function Tc(){mc(Ca.showToolTip);wi()&&(O.style.display="none",Md=null,O.onmousemove=null)}function wi(){return Ug(Ca.showToolTip)||null!==O&&"block"===O.style.display}function ua(a,b,d){null!==a&&(a.onmousemove=function(e){Ih(e,null,b,d)})}function Fc(a,b,d){a.onmousedown=function(e){Dc||(da(),bb=b,Dc=!0,xi=e.pageX-bb.offsetLeft,yi=e.pageY-bb.offsetTop,Of=bb.offsetLeft,Pf=bb.offsetTop)};a.onmouseup=function(){zi(d)};a.oncontextmenu=function(){zi(null)}}function zi(a){Dc&&(Dc=!1,bb=null,Pf=Of= 0,null!==a&&a())}function ij(a){Dc&&(bb.style.left=a.pageX-xi+"px",bb.style.top=a.pageY-yi+"px")}function jj(){Dc&&(bb.style.left=Of+"px",bb.style.top=Pf+"px",Dc=!1,bb=null,Pf=Of=0)}function hi(a){var b=k("div");a.appendChild(b);return b}function kd(a,b,d,e){e=r(e)?e:!1;var f=k("div","tab tab-control"+(e?"-selected":n.empty));y(f,b);a.appendChild(f);f.onclick=function(){d(f)}}function md(a,b,d){b=r(b)?b:!1;d=r(d)?d:!0;var e=k("div","checkbox-container tab-content custom-scroll-bars");a.appendChild(e); d&&(e.className+=" custom-scroll-bars");b||(e.style.display="none");return e}function ld(a,b,d){var e=d.getElementsByClassName("tab-control-selected"),f=e.length;d=d.getElementsByClassName("tab-content");for(var g=d.length,h=0;h=d&&f<=e&&Vj(b)}},!1,b)}function Vj(a){Ci[a.id]=!0;(new Notification(c.eventNotificationTitle,{body:c.eventNotificationBody.replace("{0}",a.title)})).onclick=function(){var b=C(a.url);b===n.empty?U(a):Mg(b);z("onNotificationClicked",a)}}function Sg(){Bi(function(){"granted"!==Notification.permission&&Notification.requestPermission()})}function Bi(a,b,d){c.eventNotificationsEnabled&&!t&&(b=r(b)?b:!0,Notification? a():b&&console.error("Browser notifications API unavailable."),r(d)&&z("onNotification",d))}function Mg(a){Ga.open(a,c.urlWindowTarget);sb("onEventUrlClicked",a)}function Wc(a){a=r(a)?a:!0;for(var b=X.length,d=0;dGa.innerWidth?d-=b.offsetWidth:d++;e+b.offsetHeight> Ga.innerHeight?e-=b.offsetHeight:e++;db;b++){8!==b&&12!==b&&16!==b&&20!==b||a.push("-");var d=Math.floor(16*Math.random()).toString(16);a.push(d)}return a.join(n.empty)}function Uj(a,b){var d=a;b=r(b)?b:30;a.length>b&&(d=0===b%2?b/2:(b-1)/2,d=a.substring(0,d)+"..."+a.substring(a.length-d));return d}function r(a){return void 0!==a&&null!==a&&a!==n.empty}function qf(a){return r(a)&&"function"===typeof a}function ja(a){return r(a)&&"string"===typeof a}function xa(a){return r(a)&&"number"===typeof a}function F(a){return r(a)&&"boolean"=== typeof a}function ac(a){return r(a)&&"object"===typeof a}function za(a){return ac(a)&&a instanceof Array}function Oa(a){return ja(a)&&a!==n.empty}function ud(a){return ac(a)&&a instanceof Date}function bh(a){return ac(a)&&void 0!==a.tagName}function li(a){return/^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))(?::\d{2,5})?(?:[/?#]\S*)?$/i.test(a)} function m(a,b){return ja(a)?a:b}function H(a,b){return F(a)?a:b}function Ea(a,b){return xa(a)?a:b}function Wg(a,b){return za(a)?a:b}function Xg(a,b){return ud(a)?a:b}function Gb(a,b,d){b=r(b)?b.toLowerCase():"csv";var e=n.empty,f=Nb,g=[];g=r(a)?g.concat(a):Jc();g=Nb(g);a=f(g,!1);if("csv"===b){e=a.length;f=Yg();g=f[0];var h=f[1],l=[];f=[];for(var p=0;p');e.push("");for(g=0;g");for(q=0;q"+Rf(v,h[v])+"")}}e.push("")}e.push("");e=e.join("\n")}else if("json"===b){e=[];f=a.length;e.push("{");e.push('"events": [');for(g=0;g");e.push("");for(g=0;g"+h.id+":");e.push("
    ");for(q=0;q"+$g(v)+": "+Rf(v,h[v])+"");e.push("
")}e.push("");e.push("");e=e.join("\n")}else if("tsv"===b){e=a.length;f=Yg();g=f[0];h=f[1];l=[];f=[];for(p=0;p=c.minimumYear&&(Z(a),z("onPreviousMonth",a))}function Fd(a){r(a)&&D(a);if(!t||Ba)a=new Date(A),a.setMonth(a.getMonth()+ 1),a.getFullYear()<=c.maximumYear&&(Z(a),z("onNextMonth",a))}function Le(){if(!t||Ba){var a=new Date(A);a.setFullYear(a.getFullYear()-1);a.getFullYear()>=c.minimumYear&&(Z(a),z("onPreviousYear",a))}}function Ne(){if(!t||Ba){var a=new Date(A);a.setFullYear(a.getFullYear()+1);a.getFullYear()<=c.maximumYear&&(Z(a),z("onNextYear",a))}}function Me(){if(!t||Ba){var a=new Date;if(A.getMonth()!==a.getMonth()||A.getFullYear()!==a.getFullYear())Z(),sb("onToday")}}function xe(a,b,d){K.hasOwnProperty(d)&&(ja(a)? K[d].text=a:K[d].text=b)}function bc(a,b){b=xa(b)?b:1;return!za(a)||a.length=c.minimumYear&&a.getFullYear()<=c.maximumYear&&(Z(a),z("onSetDate",a)))};this.getSelectedDatePickerDate=function(){return t?new Date(Ib):null};this.setSelectedDatePickerDate=function(a){ud(a)&&t&&(a=new Date(a),Bh(a)&&!pa(a,Ib)&&a.getFullYear()>=c.minimumYear&&a.getFullYear()<=c.maximumYear&&(a.setHours(0,0,0,0),Ec(),Vf(a),z("onDatePickerDateChanged", a),Ib=a))};this.exportAllEvents=function(a){c.exportEventsEnabled&&!t&&(a=ja(a)?a:"csv",Gb(null,a))};this.refresh=function(){t||ta(!0,!0)};this.setEvents=function(a,b,d){t||(d=F(d)?d:!0,Ja={},this.addEvents(a,b,!1),d&&z("onEventsSet",a))};this.setEventsFromJson=function(a,b,d){if(!t){d=F(d)?d:!0;var e=Kg(a);za(e)?this.setEvents(e,b,!1):ac(e)&&e.hasOwnProperty("events")&&this.setEvents(e.events,b,!1);d&&z("onEventsSetFromJSON",a)}};this.addEvents=function(a,b,d){if(!t){b=F(b)?b:!0;d=F(d)?d:!0;for(var e= a.length,f=0;fc.maximumEventTitleLength&&(a.title=a.title.substring(0, c.maximumEventTitleLength));0c.maximumEventDescriptionLength&&(a.description=a.description.substring(0,c.maximumEventDescriptionLength));0c.maximumEventLocationLength&&(a.location=a.location.substring(0,c.maximumEventLocationLength));0c.maximumEventGroupLength&&(a.group=a.group.substring(0,c.maximumEventGroupLength));v===n.empty||li(v)||(a.url= n.empty);ud(a.created)||(a.created=new Date);e&&(a.lastUpdated=new Date);Ja[g][h]=ph(a);f=!0;d&&z("onEventAdded",a);b&&(wb(),ra(),la())}}return f};this.updateEvents=function(a,b,d){if(!t){b=F(b)?b:!0;d=F(d)?d:!0;for(var e=a.length,f=0;f