Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/calendar/new/ |
Upload File : |
(function(e){var t=e.BXEventCalendarView;function i(){t.apply(this,arguments);this.initConfig();this.preBuild()}i.prototype=Object.create(t.prototype);i.prototype.constructor=i;i.prototype.initConfig=function(){this.name="day";this.gridLineHeight=60;this.slotHeight=20;this.offHoursCollapsedHeight=15;this.title=BX.message("EC_VIEW_DAY");this.entryWidthOffset=2;this.lastEntryWidthOffset=4;this.offsetForTimelineExpiredTime=25;this.hotkey="D";this.contClassName="calendar-day-view";this.gridWrapClass="calendar-grid-wrap";if(BX.isAmPmMode()){this.gridWrapClass+=" is-am-pm-mode"}this.fullDayContClass="calendar-grid-day-full-days-events-holder";this.fullDayContHolderClass="calendar-grid-week-full-days-events-holder-grid";this.topEntryHolderClass="calendar-grid-day-events-holder";this.outerGridClass="calendar-grid-day-container";this.gridClass="calendar-grid-day";this.gridClassCurrent="calendar-grid-day-current";this.gridClassNext="calendar-grid-day-left-slide";this.gridClassPrevious="calendar-grid-day-right-slide";this.changeNextClass="calendar-change-day-left-slide";this.changePreviousClass="calendar-change-day-right-slide";this.gridRowClass="calendar-grid-day-row";this.gridCellClass="calendar-grid-day-cell";this.gridTimelinesClass="calendar-grid-day-time-lines";this.gridTimelineHourClass="calendar-grid-day-time-line-hour";this.gridTimelineHourLabelClass="calendar-grid-day-time-line-hour-label";this.gridTimelineHourLabelClassInner="calendar-grid-week-time-line-hour-label-inner";this.gridNowTimeClass="calendar-grid-day-time-line-hour-now";this.gridNowTimeLabelClass="calendar-grid-day-time-line-hour-label";this.gridNowTimeLineClass="calendar-grid-day-time-line-hour-now-line";this.gridNowTimeDotClass="calendar-grid-day-time-line-hour-now-dot";this.gridTimeTranslucentClass="calendar-grid-time-line-translucent";this.offHoursClass="calendar-grid-off-hours";this.offHoursCollapseClass="calendar-grid-off-hours-collapse";this.offHoursAnimateClass="calendar-grid-off-hours-animate";this.offHoursFastAnimateClass="calendar-grid-off-hours-fast-animate";this.dayCount=1};i.prototype.preBuild=function(){this.viewCont=BX.create("DIV",{props:{className:this.contClassName},style:{display:"none"}})};i.prototype.build=function(){this.titleCont=this.viewCont.appendChild(BX.create("DIV",{props:{className:"calendar-grid-week-row-days-week"}}));this.fullDayEventsCont=this.viewCont.appendChild(BX.create("DIV",{props:{className:this.fullDayContClass}}));this.gridWrap=this.viewCont.appendChild(BX.create("DIV",{props:{className:this.gridWrapClass},style:{height:this.util.getViewHeight()+"px"}}));this.checkTimelineScroll();this.outerGrid=this.gridWrap.appendChild(BX.create("DIV",{props:{className:this.outerGridClass}}));this.grid=this.outerGrid.appendChild(BX.create("DIV",{props:{className:this.gridClass+" "+this.gridClassCurrent}}));BX.bind(this.gridWrap,"mousedown",BX.proxy(this.handleMousedown,this))};i.prototype.show=function(){t.prototype.show.apply(this,arguments);this.buildDaysGrid();this.showNavigationCalendar();BX.remove(this.calendar.additionalInfoOuter);this.loadEntries().then((e=>{this.entries=e;this.displayEntries()}))};i.prototype.hide=function(){t.prototype.hide.apply(this,arguments)};i.prototype.setFullDayHolderSize=function(e){this.fullDayEventsCont.style.height=e*(this.slotHeight+1)+"px"};i.prototype.increaseViewRangeDate=function(){this.changeViewRangeDate(this.dayCount);this.highlightAll();this.setTitle();if(this.gridWrap){this.gridWrap.style.overflowX="hidden"}var e=this.outerGrid.appendChild(BX.create("DIV",{props:{className:this.gridClass+" "+this.gridClassNext+" "+this.animateClass}}));BX.addClass(this.grid,this.animateClass);this.buildDaysGrid({grid:e});this.preloadEntries();setTimeout(BX.delegate((function(){BX.addClass(this.outerGrid,this.changeNextClass);setTimeout(BX.delegate((function(){BX.removeClass(this.outerGrid,this.changeNextClass);BX.removeClass(e,this.gridClassNext);BX.addClass(e,this.gridClassCurrent);BX.remove(this.grid);this.grid=e;BX.removeClass(this.grid,this.animateClass);this.gridWrap.style.overflowX="";this.loadEntries().then((e=>{this.entries=e;this.displayEntries()}))}),this),400)}),this),0)};i.prototype.decreaseViewRangeDate=function(){this.changeViewRangeDate(-this.dayCount);this.highlightAll();this.setTitle();this.gridWrap.style.overflowX="hidden";var e=this.outerGrid.appendChild(BX.create("DIV",{props:{className:this.gridClass+" "+this.gridClassPrevious+" "+this.animateClass}}));BX.addClass(this.grid,this.animateClass);this.buildDaysGrid({grid:e});setTimeout(BX.delegate((function(){BX.addClass(this.outerGrid,this.changePreviousClass);setTimeout(BX.delegate((function(){BX.removeClass(this.outerGrid,this.changePreviousClass);BX.removeClass(e,this.gridClassPrevious);BX.addClass(e,this.gridClassCurrent);BX.remove(this.grid);this.grid=e;BX.removeClass(this.grid,this.animateClass);this.gridWrap.style.overflowX="";this.loadEntries().then((e=>{this.entries=e;this.displayEntries()}))}),this),400)}),this),0)};i.prototype.changeViewRangeDate=function(e){var t=this.calendar.getViewRangeDate(),i=new Date(t.getTime());i.setDate(i.getDate()+e);this.calendar.setViewRangeDate(i);return i};i.prototype.getViewRange=function(){var e=this.calendar.getViewRangeDate(),t=new Date(e.getTime());t.setDate(t.getDate()+this.dayCount);return{start:e,end:t}};i.prototype.getAdjustedDate=function(e,t){if(!e){e=new Date}if(t&&e.getTime()<t.start.getTime()){e=new Date(t.start.getTime())}if(t&&e.getTime()>t.end.getTime()){e=new Date(t.end.getTime())}var i=false;if(e&&e.getTime){e.setHours(0,0,0,0);i=new Date(e.getTime())}return i};i.prototype.adjustViewRangeToDate=function(e,t){var i=this.calendar.getViewRangeDate(),s=false;if(e&&e.getTime){e.setHours(0,0,0,0);var a=(e.getTime()-i.getTime())/this.calendar.util.dayLength;if(a===this.dayCount){this.increaseViewRangeDate()}else if(a===-this.dayCount){this.decreaseViewRangeDate()}else{s=new Date(e.getTime());s.setHours(0,0,0,0);this.calendar.setViewRangeDate(s);if(t===false){this.show()}else{this.fadeAnimation(this.getContainer(),100,BX.delegate((function(){this.show();this.getContainer().style.opacity=0;this.showAnimation(this.getContainer(),300)}),this))}}}return s};i.prototype.buildDaysGrid=function(e){if(!e)e={};var t,i,s=e.grid||this.grid,a=this.calendar.getViewRangeDate(),r=new Date(a.getTime());var o=BX.clone(this.getViewRange(),true);if(this.dayCount>1){r=this.getAdjustedDate(r)}BX.cleanNode(s);BX.cleanNode(this.fullDayEventsCont);this.holderTitle=this.fullDayEventsCont.appendChild(BX.create("DIV",{props:{className:"calendar-grid-day-full-days-events-holder-title"},text:BX.message("EC_VIEW_DAY")}));this.fullDayEventsHolderCont=this.fullDayEventsCont.appendChild(BX.create("DIV",{props:{className:this.fullDayContHolderClass}}));this.topEntryHolder=this.fullDayEventsCont.appendChild(BX.create("DIV",{props:{className:this.topEntryHolderClass}}));this.gridRow=s.appendChild(BX.create("DIV",{props:{className:this.gridRowClass+" "+this.animateClass},style:{height:this.getDayGridHeight()+"px"}}));this.dayIndex={};this.days=[];if(this.titleCont){BX.cleanNode(this.titleCont)}this.gridRowShadow=BX.create("DIV",{props:{className:"calendar-grid-week-row-shadow"}});for(t=0;t<this.dayCount;t++){if(t===0){o.start=new Date(r.getTime());o.start.setHours(0,0,0,0)}else if(t===this.dayCount-1){o.end=new Date(r.getTime());o.end.setHours(0,0,0,0)}i=this.util.getDayCode(r);this.fullDayEventsHolderCont.appendChild(BX.create("DIV",{attrs:{"data-bx-calendar-week-day":i},props:{className:this.gridCellClass}}));this.buildDayCell({date:r,month:"previous",grid:s});if(this.dayCount>1){r.setDate(r.getDate()+1)}this.gridRowShadow.appendChild(BX.create("DIV",{attrs:{"data-bx-calendar-timeline-day":i},props:{className:"calendar-grid-week-cell"},html:'<span class="calendar-grid-cell-inner"></span>'}))}this.timeLinesCont=this.gridRow.appendChild(BX.create("DIV",{props:{className:this.gridTimelinesClass}}));this.timelineEntryHolder=this.gridRow.appendChild(BX.create("DIV",{props:{className:this.topEntryHolderClass}}));this.timeLinesIndex=[];for(t=0;t<=24;t++){this.timeLinesIndex[t]=this.timeLinesCont.appendChild(BX.create("DIV",{props:{className:this.gridTimelineHourClass},html:'<div class="'+this.gridTimelineHourLabelClass+'">'+this.calendar.util.formatTime(t,0,true)+"</div>",style:{top:t*this.gridLineHeight+"px"}}))}this.gridRow.appendChild(this.gridRowShadow);setTimeout(BX.delegate((function(){if(!this.gridWrap.scrollTop&&!this.isCollapsedOffHours){var e=this.util.getWorkTime();this.gridWrap.scrollTop=e.start*this.gridLineHeight-5}}),this),0);this.showOffHours();this.calendar.setDisplayedViewRange(o);this.showNowTime()};i.prototype.buildDayCell=function(e){var t=e.date,i="",s="",a=Math.round(t.getTime()/1e3)*1e3,r=t.getDay(),o=this.util.getDayCode(t),n=this.util.getWeekDayByInd(r);if(e.month==="previous"){s+=" calendar-grid-previous-month-day"}else if(e.month==="next"){s+=" calendar-grid-next-month-day"}if(this.util.isHoliday(t)){s+=" calendar-grid-holiday"}let l="";if(this.util.isToday(t)){i+=" calendar-grid-today";l="calendar-grid-today"}if(this.titleCont&&this.name==="week"){this.titleCont.appendChild(BX.create("DIV",{props:{className:this.gridCellClass+i},html:'<span class="calendar-grid-cell-inner" data-bx-calendar-date="'+a+'">'+BX.message("EC_WEEK_TITLE").replace("#DAY_OF_WEEK#",BX.date.format("D",a/1e3)).replace("#DATE#",t.getDate())+"</span>"}))}else if(this.titleCont){this.titleCont.appendChild(BX.create("DIV",{props:{className:this.gridCellClass+i},html:'<span class="calendar-grid-cell-inner" data-bx-calendar-date="'+a+'">'+'<span class="calendar-day-of-week-day">'+BX.date.format("l",a/1e3)+"</span>"+"</span>"}))}this.days.push({date:new Date(t.getTime()),dayOffset:this.util.getWeekDayOffset(n),node:this.gridRow.appendChild(BX.create("DIV",{attrs:{"data-bx-calendar-timeline-day":o},props:{className:this.gridCellClass+s+" a1"+" "+l},html:'<span class="calendar-grid-cell-inner"></span>'})),dayCode:o});this.dayIndex[this.days[this.days.length-1].dayCode]=this.days.length-1;this.calendar.dragDrop.registerTimelineDay(this.days[this.days.length-1])};i.prototype.setTitle=function(){var e=this.calendar.getViewRangeDate(),i=e.getTime()/1e3;t.prototype.setTitle.apply(this,[BX.date.format(BX.Calendar.Util.getLongDateFormat(),i)?.replaceAll("\\","")])};i.prototype.setDraggedEntry=function(e){this.draggedEntry=this.getRealEntry(e);if(!this.draggedEntry){return null}for(const e in this.draggedEntry.parts){this.draggedEntry.parts[e].params.wrapNode.style.transition="none";this.draggedEntry.parts[e].params.wrapNode.style.opacity="0.3"}};i.prototype.setResizedEntry=function(e){if(!e){this.resizedEntry=null}else{this.resizedEntry=this.entries.find((t=>t.uid===e.uid))}};i.prototype.loadEntries=function(){return new Promise((e=>{const t=this.getViewRange();this.entryController.getList({showLoader:this.entries&&!this.entries.length,startDate:new Date(t.start.getFullYear(),t.start.getMonth(),1),finishDate:new Date(t.end.getFullYear(),t.end.getMonth()+1,1),viewRange:t}).then((t=>{e(t)}))}))};i.prototype.displayEntries=function(){if(this.draggedEntry||this.resizedEntry){return}this.entries=this.getUndeletedEntries();this.partsStorage=[];this.timelinePartsStorage=[];BX.cleanNode(this.topEntryHolder);BX.cleanNode(this.timelineEntryHolder);this.fullDayEventsCont.style.height="";this.days.forEach((function(e){e.slots=[];e.timelineMap={};if(e.collapsedWrap&&e.collapsedWrap.top){e.collapsedWrap.top.destroy()}if(e.collapsedWrap&&e.collapsedWrap.bottom){e.collapsedWrap.bottom.destroy()}e.collapsedWrap={top:null,bottom:null};e.entries={topList:[],started:[],timeline:[],hidden:[]}}));let e=0;if(this.entries&&this.entries.length){for(let t=0;t<this.entries.length;t++){const i=this.entries[t];this.entriesIndex[i.uid]=t;i.cleanParts();let s=false;let a;for(let t=this.dayIndex[i.startDayCode];t<this.days.length;t++){const r=this.days[t];if(!i.isLongWithTime()&&r.dayCode===i.startDayCode&&r.dayCode===i.endDayCode&&!i.fullDay){a=i.startPart({from:r,to:r,daysCount:0,fromTimeValue:this.util.getTimeValue(i.from),toTimeValue:this.util.getTimeValue(i.to)});r.entries.timeline.push({entry:i,part:a});this.timelinePartsStorage.push({part:a,entry:i});break}else{if(r.dayCode===i.startDayCode){s=true;a=i.startPart({from:r,daysCount:0});r.entries.started.push({entry:i,part:a})}if(s){r.entries.topList.push({entry:i,part:a});a.daysCount++;a.to=r;if(r.entries.topList.length>e)e=r.entries.topList.length;if(r.dayCode===i.endDayCode||r.dayOffset===this.dayCount-1||this.dayCount===1){this.partsStorage.push({part:a,entry:i});if(r.dayCode===i.endDayCode){break}}}}}}}if(this.entries&&this.entries.length){this.displayTopEntries();this.displayTimelineEntries();this.SLOTS_COUNT=10;this.arrangeTopEntries();this.arrangeTimelineEntries()}if(this.draggedEntry){this.draggedEntry=this.entries.find((e=>e.uid===this.draggedEntry.uid));for(const e in this.draggedEntry.parts){this.draggedEntry.parts[e].params.wrapNode.style.transition="none";this.draggedEntry.parts[e].params.wrapNode.style.opacity="0.3"}}this.setFullDayHolderSize(Math.min(Math.max(e,1),this.SLOTS_COUNT));for(const e of this.days){if(e.entries.topList.length>0){let t=false;for(let i=0;i<e.entries.topList.length;i++){if(e.entries.topList[i].part.params.wrapNode.style.display==="none"){t=true;break}}if(t){e.hiddenStorage=this.topEntryHolder.appendChild(BX.create("DIV",{props:{className:"calendar-event-line-wrap calendar-event-more-btn-container"},attrs:{"data-bx-calendar-show-all-events":e.dayCode},style:{top:parseInt(this.fullDayEventsCont.style.height)-20+"px",left:this.dayCount===1?"0":"calc((100% / "+this.dayCount+") * ("+(e.dayOffset+1)+" - 1) + 2px)",width:"calc(100% / "+this.dayCount+" - 3px)"}}));e.hiddenStorageText=e.hiddenStorage.appendChild(BX.create("span",{props:{className:"calendar-event-more-btn"}}));e.hiddenStorage.style.display="block";e.hiddenStorageText.innerHTML=BX.message("EC_SHOW_ALL")+" "+e.entries.topList.length}else if(e.hiddenStorage){e.hiddenStorage.style.display="none"}}}BX.addClass(this.grid,"calendar-events-holder-show");BX.addClass(this.fullDayEventsCont,"calendar-events-holder-show");this.checkTimelineScroll()};i.prototype.arrangeTopEntries=function(){var e,t,i,s,a,r,o,n,l;for(a=0;a<this.days.length;a++){r=this.days[a];if(r.entries.started.length>0){r.entries.started.sort(this.calendar.entryController.sort);for(i=0;i<r.entries.started.length;i++){e=r.entries.started[i];if(e){o=e.entry;n=e.part;if(!o.checkPartIsRegistered(n))continue;l=false;for(s=0;s<this.SLOTS_COUNT;s++){if(r.slots[s]!==false){this.occupySlot({slotIndex:s,startIndex:a,endIndex:a+n.daysCount});l=true;o.getWrap(n.partIndex).style.top=s*this.slotHeight+"px";break}}if(!l){t=r.entries.started[i-1];if(t){r.entries.hidden.push(t);t.entry.getWrap(t.part.partIndex).style.display="none"}r.entries.hidden.push(e);o.getWrap(n.partIndex).style.display="none"}}if(r.hiddenStorage&&r.entries.hidden.length>0){r.hiddenStorageText.innerHTML=BX.message("EC_SHOW_ALL")+" ("+r.entries.topList.length+")"}}}}};i.prototype.arrangeTimelineEntries=function(){var e=30,t=33,i=20,s=40,a=6,r=2,o,n,l,d,h,p,f,c,u,m,y,g,C,w,T,H,v,B,x;function E(e){var t,i;for(t=e.timeFrom;t<e.timeTo;t++){if(!e.layers[t])e.layers[t]=[];i=e.day.layers[t][e.layerIndex]||{entries:[],start:[]};i.entries.push(e.entryIndex);if(t==e.timeFrom){i.start.push(e.entryIndex);e.entryPart.layerParallels=i.start.length}e.day.layers[t][e.layerIndex]=i}e.entryPart.layerIndex=e.layerIndex}function N(e,t){var i=f.layers[e][t];return i&&i.entries&&i.entries.length===i.start.length}function b(e){return!e}function X(e){var t,i,s,a=[],r={};for(t=e.timeFrom;t<e.timeTo;t++){if(e.layerIndex>0&&e.day.layers[t][e.layerIndex-1]){i=e.day.layers[t][e.layerIndex-1].entries;if(i.length>0){s=i[i.length-1];if(!r[s]){r[s]=true;a.push(s)}}}}return a}function D(t,i){if(!i)i=e;return t.getHours()*60+Math.floor(t.getMinutes()/i)*i}for(p=0;p<this.days.length;p++){f=this.days[p];f.entries.timeline.sort((function(e,t){if(e.part.fromTimeValue===t.part.fromTimeValue){return t.part.toTimeValue-t.part.fromTimeValue-(e.part.toTimeValue-e.part.fromTimeValue)}return e.part.fromTimeValue-t.part.fromTimeValue}));o=0;l="";n=0;g=0;f.layers=[];for(d=0;d<f.entries.timeline.length;d++){B=f.entries.timeline[d].entry;x=f.entries.timeline[d].part;m=D(B.from,1);y=D(B.to,1);if(m===y)y+=1;if(!f.layers)f.layers=[];C=0;while(true){if(!f.layers[m]||N(m,C)||b(f.layers[m][C])){E({day:f,timeFrom:m,timeTo:y,layers:f.layers,entryIndex:d,layerIndex:C,entryPart:x});break}C++}}for(d=0;d<f.entries.timeline.length;d++){if(f.entries.timeline[d]){B=f.entries.timeline[d].entry;x=f.entries.timeline[d].part;m=D(B.from,1);y=D(B.to,1);if(m===y)y+=1;if(!B.checkPartIsRegistered(x)||!f.layers[m]||!f.layers[m][x.layerIndex]){continue}u=f.layers[m][x.layerIndex].start;if(x.params&&x.params.wrapNode){x.params.wrapNode.style.zIndex=m}x.absoluteLeftOffset=r;if(x.layerIndex>0){v=X({day:f,entryIndex:d,layerIndex:x.layerIndex,timeFrom:m,timeTo:y});for(h=0;h<v.length;h++){w=f.entries.timeline[v[h]];if(w&&w.part&&w.part.params&&x.params.wrapNode){T=parseInt(x.params.wrapNode.style.top)-parseInt(w.part.params.wrapNode.style.top);if(T>t){x.offsetFractionLeft=w.part.offsetFractionWidth*.1}else{x.offsetFractionLeft=w.part.offsetFractionWidth*.45}x.offsetFractionLeftTotal=w.part.offsetFractionLeftTotal+x.offsetFractionLeft;x.offsetFractionWidth=1-x.offsetFractionLeftTotal;if(this.dayCount>1){x.offsetLeftRate=x.from.dayOffset+x.offsetFractionLeftTotal}else{x.offsetLeftRate=x.offsetFractionLeftTotal}x.absoluteLeftOffset=(w.absoluteLeftOffset||r)+a;H=1-x.offsetFractionLeftTotal;if(T<=t){if(T<i){w.part.params.timeNode.style.maxWidth="calc("+(1-x.offsetFractionWidth)*100+"% - 4px)";if(w.part.params.timeNode.offsetWidth<s){w.part.params.timeNode.style.textOverflow="clip";w.part.params.timeNode.style.maxWidth=s+"px"}}if(w.part.params.nameNode.offsetWidth<s){w.part.params.nameNode.style.textOverflow="clip";w.part.params.nameNode.style.maxWidth="calc("+(1-x.offsetFractionWidth)*100+"% + 5px)"}}else if(w.part.params.nameNode){w.part.params.nameNode.style.whiteSpace="nowrap";w.part.params.nameNode.style.display="block";w.part.params.nameNode.style.textOverflow="ellipsis";w.part.params.nameNode.style.lineHeight="11px";w.part.params.timeNode.style.lineHeight="11px"}x.params.wrapNode.style.left="calc((100% / "+this.dayCount+") * "+x.offsetLeftRate+")";x.params.wrapNode.style.width="calc(100% / ("+this.dayCount+") * "+x.offsetFractionWidth+" - "+this.lastEntryWidthOffset+"px)";BX.addClass(x.params.wrapNode,"calendar-bordered-block")}}}if(u.length>1){c=BX.util.array_search(d,f.layers[m][x.layerIndex].start);var O=this.entryWidthOffset;if(c==f.layers[m][x.layerIndex].start.length-1){O=this.lastEntryWidthOffset;if(x.absoluteLeftOffset>r){O+=x.absoluteLeftOffset/u.length+1}}x.params.wrapNode.style.zIndex=parseInt(x.params.wrapNode.style.zIndex)-c;if(this.dayCount>1){x.params.wrapNode.style.width="calc(100% / ("+this.dayCount+" * "+u.length+") - "+O+"px)";x.params.wrapNode.style.left="calc((100% / "+this.dayCount+") * "+x.from.dayOffset+" + 100% * "+c+"/ ("+this.dayCount+" * "+u.length+") + "+x.absoluteLeftOffset+"px)"}else{x.params.wrapNode.style.width="calc(100% / ("+this.dayCount+" * "+u.length+") - "+O+"px)";x.params.wrapNode.style.left="calc(100% * "+c+"/ "+u.length+" + "+x.absoluteLeftOffset+"px)"}}if(x.params&&x.params.wrapNode){this.updateCompactness(x.params.wrapNode)}}}}};i.prototype.fillTimelineMap=function(e,t,i){var s,a=t.from.getHours()*60+t.from.getMinutes(),r=t.to.getHours()*60+t.to.getMinutes();for(s=a;s<r;s++){if(!e[s])e[s]=[];e[s].push(i)}};i.prototype.displayTopEntries=function(){var e;for(e=0;e<this.partsStorage.length;e++){this.displayTopEntry(this.partsStorage[e])}};i.prototype.displayTopEntry=function(e){var t,i=e.entry,s=e.part.from,a=e.part.daysCount,r,o,n,l,d,h,p,f="calendar-event-line-wrap",c=0,u,m;if(i.isFullDay()){f+=" calendar-event-line-fill"}else if(i.isLongWithTime()){f+=" calendar-event-line-border"}if(i.getCurrentStatus()==="N"){f+=" calendar-event-line-refused"}if(i.isInvited()){f+=" calendar-event-animate-counter-highlight"}let y=i.color;if(i.isFullDay()){y=this.calendar.util.addOpacityToHex(i.color,.3)}else if(i.isLongWithTime()){y=this.calendar.util.addOpacityToHex(i.color,.5)}if(this.util.getDayCode(i.from)!==this.util.getDayCode(s.date)){f+=" calendar-event-line-start-yesterday";c+=8;u=this.getArrow("left",y,i.isFullDay())}if(this.util.getDayCode(i.to)!==this.util.getDayCode(e.part.to.date)){f+=" calendar-event-line-finish-tomorrow";m=this.getArrow("right",y,i.isFullDay());c+=12}if(u&&!m){c+=4}if(c===0){c=5}r=BX.create("DIV",{attrs:{"data-bx-calendar-entry":i.uid},props:{className:f},style:{top:0,left:this.dayCount>1?"calc((100% / "+this.dayCount+") * ("+(s.dayOffset+1)+" - 1) + 2px)":"2px",width:"calc("+a+" * 100% / "+this.dayCount+" - "+c+"px)"}});if(u){r.appendChild(u);r.style.left="9px"}if(m){r.appendChild(m)}p=r.appendChild(BX.create("DIV",{props:{className:"calendar-event-line-inner-container"}}));n=p.appendChild(BX.create("DIV",{props:{className:"calendar-event-line-inner"}}));o=n.appendChild(BX.create("DIV",{props:{className:"calendar-event-line-dot"}}));if(i.isFullDay()){n.style.maxWidth="calc(200% / "+a+" - "+this.lastEntryWidthOffset+"px)"}else{r.style.borderColor=i.color;if(e.part.partIndex===i.parts.length-1){if(a>1&&i.parts.length>1){n.style.width="calc("+(a-1)+"00% / "+a+" - "+this.lastEntryWidthOffset+"px)"}}r.style.borderColor=i.color;const t=i.calendar.displayedRange.start,s=i.calendar.displayedRange.end,o=this.util.getDayCode(i.from)>=this.util.getDayCode(t),l=this.util.getDayCode(i.to)<=this.util.getDayCode(s),p=this.calendar.util.formatTime(i.from.getHours(),i.from.getMinutes()),f=this.calendar.util.formatTime(i.to.getHours(),i.to.getMinutes());if(a===1){if(o){d=n.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-time"},text:p}));n.style.width="calc(100% / "+a+" - "+this.lastEntryWidthOffset+"px)"}else if(l){d=n.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-time"},text:BX.message("EC_JS_UNTIL_DATE").replace("#DATE#",f)}))}}else{if(l){h=n.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-expired-time"},text:f}));n.style.width="calc(100% - "+this.offsetForTimelineExpiredTime+"px)"}if(o){d=n.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-time"},text:p}));n.style.width="calc(100% / "+a+" - "+this.lastEntryWidthOffset+"px)"}}}l=n.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-text"},text:e.entry.name}));if(i.isFullDay()){p.style.backgroundColor=this.calendar.util.addOpacityToHex(i.color,.3);p.style.borderColor=this.calendar.util.addOpacityToHex(i.color,.3)}else{if(i.isLongWithTime()){p.style.borderColor=this.calendar.util.addOpacityToHex(i.color,.5)}o.style.backgroundColor=i.color}if(i.isInvited()&&this.isFirstVisibleRecursiveEntry(i)){n.appendChild(BX.create("SPAN",{props:{className:"calendar-event-invite-counter"},text:"1"}))}(e.holder||this.topEntryHolder).appendChild(r);t={wrapNode:r,nameNode:l,innerNode:n,innerContainer:p,timeNode:d||false,endTimeNode:h||false,dotNode:o};if(!e.popupMode){e.entry.registerPartNode(e.part,t)}this.calendar.dragDrop.registerEntry(r,e);return t};i.prototype.displayTimelineEntries=function(){this.zIndexTimeline=100;this.timelinePartsStorage.sort((function(e,t){if(e.part.fromTimeValue===t.part.fromTimeValue){return t.part.toTimeValue-t.part.fromTimeValue-(e.part.toTimeValue-e.part.fromTimeValue)}return e.part.fromTimeValue-t.part.fromTimeValue}));for(var e=0;e<this.timelinePartsStorage.length;e++){this.displayTimelineEntry(this.timelinePartsStorage[e])}};i.prototype.displayTimelineEntry=function(e){var t=false,i,s,a,r,o,n,l=this.util.getWorkTime(),d=e.entry,h=e.part.from,p=e.part.fromTimeValue,f=e.part.toTimeValue,c="calendar-event-block-wrap";if(d.hasEmailAttendees()||d.ownerIsEmailUser()||d.getCurrentStatus()==="N"||d.isSharingEvent()){c+=" calendar-event-wrap-icon"}if(d.isExpired()){c+=" calendar-event-block-wrap-past"}if(d.isSharingEvent()){c+=" calendar-event-block-wrap-sharing"}if(!this.isCollapsedOffHours||f>l.start&&p<l.end){if(this.isCollapsedOffHours){p=Math.max(e.part.fromTimeValue,l.start);f=Math.min(e.part.toTimeValue,l.end);i=(p-l.start)*this.gridLineHeight+1+"px"}else{i=p*this.gridLineHeight+1+"px"}s=BX.create("DIV",{attrs:{"data-bx-calendar-entry":d.uid},props:{className:c},style:{top:i,height:(f-p)*this.gridLineHeight-1+"px",left:this.dayCount>1?"calc((100% / "+this.dayCount+") * "+h.dayOffset+" + 2px)":"2px",width:"calc(100% / "+this.dayCount+" - "+this.lastEntryWidthOffset+"px)"}});a=s.appendChild(BX.create("DIV",{props:{className:"calendar-event-block-inner"}}));const n=a.appendChild(BX.create("SPAN",{props:{className:"calendar-event-block-title"}}));if(d.isInvited()){a.className+=" calendar-event-animate-counter-highlight";if(this.isFirstVisibleRecursiveEntry(d)){n.appendChild(BX.create("DIV",{props:{className:"calendar-event-invite-counter"},text:"1"}))}else{n.appendChild(BX.create("DIV",{props:{className:"calendar-event-invite-counter-dot"}}))}}else if(d.getCurrentStatus()==="N"){n.appendChild(BX.create("SPAN",{props:{className:"calendar-event-block-icon-refused"}}))}else if(this.shouldEntryLookLikeSharing(d)){n.appendChild(BX.create("SPAN",{props:{className:"calendar-event-block-icon-sharing"}}))}else if(d.hasEmailAttendees()||d.ownerIsEmailUser()){n.appendChild(BX.create("SPAN",{props:{className:"calendar-event-block-icon-mail"}}))}if(this.shouldEntryLookLikeCollab(d)&&d.getCurrentStatus()!=="N"){const e=d.isExpired()?"--gray":"--white";n.appendChild(BX.Tag.render`<span class="calendar-event-block-icon-collab ${e}"></span>`)}r=n.appendChild(BX.create("SPAN",{props:{className:"calendar-event-block-text"},text:e.entry.name}));if(!this.calendar.util.isDarkColor(d.color)){BX.Dom.addClass(a,"calendar-event-text-dark")}o=a.appendChild(BX.create("SPAN",{props:{className:"calendar-event-block-time"},html:this.calendar.util.formatTime(d.from)+" – "+this.calendar.util.formatTime(d.to)}));let u;if(this.shouldEntryLookLikeCollab(d)&&d.getCollabId()){const e=this.calendar.collabManager.getById(d.getCollabId());const t=this.calendar.util.config.type==="group"&&e&&this.calendar.util.config.ownerId===e.getId();if(e&&!t){const t=BX.Loc.getMessage("EC_VIEW_COLLAB_PREFIXED_NAME",{"#TITLE#":e.getName(),"[collab_prefix]":'<span class="collab-prefix">',"[/collab_prefix]":"</span>"});u=BX.Tag.render` <span class="calendar-event-block-collab"> <span class="calendar-event-block-collab-name"> ${t} </span> </span> `;a.appendChild(u)}}const m=this.shouldEntryLookLikeCollab(d)?this.calendar.util.getCollabColor():d.color;a.style.backgroundColor=m;let y,g;if(this.calendar.util.type!=="location"&&this.calendar.entryController.canDo(d,"edit")){y=s.appendChild(BX.create("DIV",{props:{className:"calendar-event-resizer calendar-event-resizer-top"}}));g=s.appendChild(BX.create("DIV",{props:{className:"calendar-event-resizer calendar-event-resizer-bottom"}}))}this.timelineEntryHolder.appendChild(s);t={wrapNode:s,nameNode:r,innerNode:a,timeNode:o,collabNode:u,blockBackgroundNode:a,resizerNodeTop:y,resizerNodeBottom:g};e.part.offsetFractionRate=1;//!!!! e.part.offsetFractionLeft=0;e.part.offsetFractionWidth=1;e.part.offsetFractionLeftTotal=0;e.entry.registerPartNode(e.part,t);this.calendar.dragDrop.registerEntry(s,e)}else{this.addHiddenEntry({position:p<l.end?"top":"bottom",entry:d})}return t};i.prototype.addHiddenEntry=function(e){this.getCollapsedWrap({position:e.position,dayCode:this.util.getDayCode(e.entry.from)}).addEntry(e.entry)};i.prototype.getCollapsedWrap=function(e){if(this.dayIndex[e.dayCode]!==undefined&&this.days[this.dayIndex[e.dayCode]]){var t=this.days[this.dayIndex[e.dayCode]];if(!t.collapsedWrap[e.position]||!t.collapsedWrap[e.position].inited()){t.collapsedWrap[e.position]=new a({position:e.position,wrap:this.timelineEntryHolder,workTime:this.util.getWorkTime(),dayOffset:t.dayOffset,dayCount:this.dayCount,lastEntryWidthOffset:this.lastEntryWidthOffset,gridLineHeight:this.gridLineHeight,labelMessage:this.calendar.collapsedLabelMessage,clickHandler:e=>{if(this.isCollapsedOffHours){const t=e.target.closest(".calendar-event-block-wrap");const i=parseInt(t.style.top);if(i<0){this.switchOffHours(true,"top")}else{this.switchOffHours(true,"bottom")}}},mouseoverHandler:function(){BX.addClass(this.topOffHours,"calendar-grid-off-hours-hover");BX.addClass(this.bottomOffHours,"calendar-grid-off-hours-hover")}.bind(this),mouseoutHandler:function(){BX.removeClass(this.topOffHours,"calendar-grid-off-hours-hover");BX.removeClass(this.bottomOffHours,"calendar-grid-off-hours-hover")}.bind(this)})}return t.collapsedWrap[e.position]}return null};i.prototype.displayTimelineCollapsedEntry=function(e){};i.prototype.showNowTime=function(){this.nowTimeLabel=BX.create("DIV",{props:{className:this.gridNowTimeLabelClass}});this.nowTimeLine=BX.create("DIV",{props:{className:this.gridNowTimeLineClass}});this.nowTimeLine.append(this.nowTimeLabel);this.nowTimeCont=BX.create("DIV",{props:{className:this.gridNowTimeClass}});this.nowTimeCont.append(this.nowTimeLine);this.gridRow.append(this.nowTimeCont);if(this.nowTimeInterval){clearInterval(this.nowTimeInterval)}this.updateNowTime();this.nowTimeInterval=setInterval(BX.proxy(this.updateNowTime,this),15e3)};i.prototype.hideNowTime=function(){if(!this.nowTimeCont){return}BX.cleanNode(this.nowTimeCont,1);delete this.nowTimeCont;if(this.nowTimeInterval){clearInterval(this.nowTimeInterval)}};i.prototype.resetNowTime=function(){this.hideNowTime();this.showNowTime()};i.prototype.hideOffHoursNowTime=function(){const e=this.util.getWorkTime();const t=this.util.getTimeValue(new Date);if(t<e.start||t>e.end){this.hideNowTime()}};i.prototype.getUserTime=function(){const e=this.util.config.userSettings;const t=e.timezoneName;return new Date((new Date).toLocaleString("en-US",{timeZone:t}))};i.prototype.updateNowTime=function(){if(!this.nowTimeCont){return}const e=this.getUserTime();const t=this.util.getTimeValue(e);const i=document.querySelector("."+this.gridTimeTranslucentClass);if(i){BX.removeClass(i,this.gridTimeTranslucentClass)}const s=this.util.getWeekDayOffset(this.util.getWeekDayByInd(e.getDay()));const a=this.getViewRange();if(e.getTime()>a.start.getTime()&&e.getTime()<a.end.getTime()){if(this.dayCount>1){if(s===0){this.nowTimeLine.style.left=0}else{this.nowTimeLine.style.left="calc("+s+" * 100% / "+this.dayCount+" + 5px)"}}}else{this.hideNowTime();return}let r=this.calendar.util.formatTime(e.getHours(),e.getMinutes());if(BX.isAmPmMode()){r=r.replace(/(\sam|pm)/gi,"<small>$1<small>")}this.nowTimeLabel.innerHTML=r;this.nowTimeCont.style.marginTop="";this.nowTimeLine.classList.remove("calendar-hour-now-line-translucent");const o=this.util.getWorkTime();if(this.isCollapsedOffHours){if(t<o.start){this.nowTimeCont.style.top="-5px";this.nowTimeCont.style.marginTop="23px";this.nowTimeLine.classList.add("calendar-hour-now-line-translucent")}else if(t>o.end){this.nowTimeCont.style.top=(o.end-o.start)*this.gridLineHeight+4+"px";this.nowTimeCont.style.marginTop="22px";this.nowTimeLine.classList.add("calendar-hour-now-line-translucent")}else{this.nowTimeCont.style.top=(t-o.start)*this.gridLineHeight+this.timeLinesCont.offsetTop+"px"}}else{this.nowTimeCont.style.top=t*this.gridLineHeight+this.timeLinesCont.offsetTop+"px"}if(this.isCollapsedOffHours&&(s===0||this.dayCount===1)){if(t<o.start){BX.addClass(this.topOffHoursLabel,this.gridTimeTranslucentClass)}if(t>o.end){BX.addClass(this.bottomOffHoursLabel,this.gridTimeTranslucentClass)}}else{BX.removeClass(this.topOffHoursLabel,this.gridTimeTranslucentClass);BX.removeClass(this.bottomOffHoursLabel,this.gridTimeTranslucentClass)}const n=Math.round(t);const l=10;if((s===0||this.dayCount===1)&&Math.abs((n-t)*this.gridLineHeight)<l&&this.timeLinesIndex[n]){BX.addClass(this.timeLinesIndex[n],this.gridTimeTranslucentClass)}};i.prototype.getPosByTime=function(e){const t=this.getTimeByPos(0,1);const i=t.h*60+t.m;const s=e.h*60+e.m;let a=s-i+4;let r=this.getTimeByPos(a,5);while(a>=0&&r.h===e.h&&r.m===e.m){a--;r=this.getTimeByPos(a,5)}return a+1};i.prototype.getTimeByPos=function(e,t){var i=this.util.getWorkTime(),s=e/this.gridLineHeight,a=this.util.getTimeByFraction(s,t||10);if(this.isCollapsedOffHours){a.h+=i.start}return a};i.prototype.showOffHours=function(){var e=this.util.getWorkTime();this.topOffHours=this.timeLinesCont.appendChild(BX.create("DIV",{props:{className:this.offHoursClass+" "+this.offHoursAnimateClass},style:{top:0,height:e.start*this.gridLineHeight+1+"px"}}));this.topOffHoursLabel=this.topOffHours.appendChild(BX.create("DIV",{props:{className:this.gridTimelineHourLabelClass},html:"<span>"+this.calendar.util.formatTime(0,0,true)+"</span><span>"+this.calendar.util.formatTime(e.start,0,true)+"</span>",events:{click:()=>{this.switchOffHours(true,"top")},mouseover:()=>{BX.addClass(this.topOffHours,"calendar-grid-off-hours-hover")},mouseout:()=>{BX.removeClass(this.topOffHours,"calendar-grid-off-hours-hover")}}}));this.timelineEntryHolder.addEventListener("mouseover",(e=>{if(e.target===this.timelineEntryHolder){BX.addClass(this.topOffHours,"calendar-grid-off-hours-hover")}}));this.timelineEntryHolder.addEventListener("mouseout",(e=>{if(e.target===this.timelineEntryHolder){BX.removeClass(this.topOffHours,"calendar-grid-off-hours-hover")}}));this.topOffHours.appendChild(BX.create("DIV",{props:{className:"calendar-grid-off-hours-active"},events:{click:()=>{this.switchOffHours(true,"top")},mouseover:BX.proxy((function(){BX.addClass(this.topOffHours,"calendar-grid-off-hours-hover");BX.addClass(this.bottomOffHours,"calendar-grid-off-hours-hover")}),this),mouseout:BX.proxy((function(){BX.removeClass(this.topOffHours,"calendar-grid-off-hours-hover");BX.removeClass(this.bottomOffHours,"calendar-grid-off-hours-hover")}),this)}}));this.topOffHours.appendChild(BX.create("DIV",{props:{className:"calendar-grid-off-hours-drag-down"},attrs:{"data-bx-calendar-off-time-drag":"top"},events:{mousedown:BX.proxy(this.offHoursMousedown,this)}}));this.bottomOffHours=this.timeLinesCont.appendChild(BX.create("DIV",{props:{className:this.offHoursClass+" "+this.offHoursAnimateClass},style:{top:e.end*this.gridLineHeight+1+"px",height:(24-e.end)*this.gridLineHeight+1+"px"}}));this.bottomOffHoursLabel=this.bottomOffHours.appendChild(BX.create("DIV",{props:{className:this.gridTimelineHourLabelClass},html:"<span>"+this.calendar.util.formatTime(e.end,0,true)+"</span><span>"+this.calendar.util.formatTime(24,0,true)+"</span>",events:{click:()=>{this.switchOffHours(true,"bottom")},mouseover:()=>{BX.addClass(this.bottomOffHours,"calendar-grid-off-hours-hover")},mouseout:()=>{BX.removeClass(this.bottomOffHours,"calendar-grid-off-hours-hover")}}}));this.bottomOffHours.appendChild(BX.create("DIV",{props:{className:"calendar-grid-off-hours-active"},events:{click:()=>{this.switchOffHours(true,"bottom")},mouseover:BX.proxy((function(){BX.addClass(this.topOffHours,"calendar-grid-off-hours-hover");BX.addClass(this.bottomOffHours,"calendar-grid-off-hours-hover")}),this),mouseout:BX.proxy((function(){BX.removeClass(this.topOffHours,"calendar-grid-off-hours-hover");BX.removeClass(this.bottomOffHours,"calendar-grid-off-hours-hover")}),this)}}));this.bottomOffHours.appendChild(BX.create("DIV",{props:{className:"calendar-grid-off-hours-drag-up"},attrs:{"data-bx-calendar-off-time-drag":"bottom"},events:{mousedown:BX.proxy(this.offHoursMousedown,this)}}));BX.bind(this.topOffHours,"click",BX.proxy((function(){if(this.isCollapsedOffHours){this.switchOffHours(true,"top")}}),this));BX.bind(this.bottomOffHours,"click",BX.proxy((function(){if(this.isCollapsedOffHours){this.switchOffHours(true,"bottom")}}),this));if(this.isCollapsedOffHours){this.gridRow.style.height=this.gridLineHeight*(e.end-e.start)+30+"px";this.isCollapsedOffHours=!this.isCollapsedOffHours;this.switchOffHours(false);this.updateGridRowShadowHeight()}else{this.gridRow.style.height=this.gridLineHeight*24+40+"px";this.updateGridRowShadowHeight()}};i.prototype.offHoursMousedown=function(e){var t=e.target||e.srcElement;this.lastWorkTime=false;this.lastTopCount=false;if(t&&t.getAttribute){this.lastWorkTime=BX.clone(this.util.getWorkTime());BX.unbind(document,"mousemove",BX.proxy(this.offHoursMousemove,this));BX.unbind(document,"mouseup",BX.proxy(this.offHoursMouseup,this));BX.bind(document,"mousemove",BX.proxy(this.offHoursMousemove,this));BX.bind(document,"mouseup",BX.proxy(this.offHoursMouseup,this));BX.removeClass(this.topOffHours,this.offHoursAnimateClass);BX.removeClass(this.bottomOffHours,this.offHoursAnimateClass);BX.addClass(this.topOffHours,this.offHoursFastAnimateClass);BX.addClass(this.bottomOffHours,this.offHoursFastAnimateClass);if(t.getAttribute("data-bx-calendar-off-time-drag")=="top"){this.offtimeTuneMode="top"}else{this.offtimeTuneMode="bottom"}this.offtimeTuneBaseZeroPos=BX.pos(this.timeLinesCont).top}};i.prototype.offHoursMousemove=function(e){if(this.offtimeTuneMode){var t=this.util.getMousePos(e),i=Math.max(Math.round((t.y-this.offtimeTuneBaseZeroPos)/this.gridLineHeight),0);if(this.lastTopCount!==i){this.preventSwichOffHours=true;if(this.offtimeTuneMode=="top"){i=Math.min(this.lastWorkTime.end-1,i);this.topOffHours.style.height=i*this.gridLineHeight+1+"px";this.lastWorkTime.start=i}else{i=Math.max(this.lastWorkTime.start+1,i);this.bottomOffHours.style.top=i*this.gridLineHeight+"px";this.bottomOffHours.style.height=(24-i)*this.gridLineHeight+1+"px";this.lastWorkTime.end=i}this.lastTopCount=i}}};i.prototype.offHoursMouseup=function(e){BX.unbind(document,"mousemove",BX.proxy(this.offHoursMousemove,this));BX.unbind(document,"mouseup",BX.proxy(this.offHoursMouseup,this));BX.addClass(this.topOffHours,this.offHoursAnimateClass);BX.addClass(this.bottomOffHours,this.offHoursAnimateClass);BX.removeClass(this.topOffHours,this.offHoursFastAnimateClass);BX.removeClass(this.bottomOffHours,this.offHoursFastAnimateClass);var t=this.util.setWorkTime(this.lastWorkTime);this.topOffHoursLabel.innerHTML="<span>"+this.calendar.util.formatTime(0,0,true)+"</span><span>"+this.calendar.util.formatTime(t.start,0,true)+"</span>";this.bottomOffHoursLabel.innerHTML="<span>"+this.calendar.util.formatTime(t.end,0,true)+"</span><span>"+this.calendar.util.formatTime(24,0,true)+"</span>";this.offtimeTuneMode=false;delete this.lastWorkTime;delete this.lastTopCount;this.isCollapsedOffHours=false;if(!this.preventSwichOffHours){if(e.target.className==="calendar-grid-off-hours-drag-up"){this.switchOffHours(true,"bottom")}else{this.switchOffHours(true,"top")}}this.preventSwichOffHours=false};i.prototype.switchOffHours=function(e,t){if(this.denySwitch){return}this.denySwitch=true;this.removeOffHoursEntries();if(e){this.animateSwitchOffHours(t,this.isCollapsedOffHours)}else{this.setSwitchOffHours(this.isCollapsedOffHours)}this.isCollapsedOffHours=!this.isCollapsedOffHours};i.prototype.setSwitchOffHours=function(e){BX.removeClass(this.bottomOffHours,this.offHoursAnimateClass);BX.removeClass(this.topOffHours,this.offHoursAnimateClass);BX.removeClass(this.timeLinesCont,this.offHoursAnimateClass);this.switchOffHoursProps(e);if(e){this.showHourLines()}this.displayEntries();this.denySwitch=false;this.checkTimelineScroll()};i.prototype.animateSwitchOffHours=function(e,t){BX.addClass(this.bottomOffHours,this.offHoursAnimateClass);BX.addClass(this.topOffHours,this.offHoursAnimateClass);BX.addClass(this.timeLinesCont,this.offHoursAnimateClass);this.switchOffHoursProps(t);this.hideOffHoursNowTime();let i,s;if(t){i=this.offHoursCollapsedHeight;s=0}else{i=0;s=this.offHoursCollapsedHeight}const a=BX.create("DIV",{style:{position:"absolute",width:1+"px",height:i+"px",top:this.gridWrap.clientHeight+this.topOffHours.clientHeight+"px",transition:"400ms all ease"}});this.timelineEntryHolder.append(a);a.style.top=this.gridWrap.clientHeight+this.topOffHours.clientHeight-s*2+"px";a.style.height=s+"px";const r=this.topOffHours.clientHeight;const o=this.gridWrap.scrollTop;const n=[...this.timelineEntryHolder.childNodes].filter((e=>e!==a));new BX.easing({duration:400,start:{},finish:{},step:()=>{let i=this.topOffHours.clientHeight-a.clientHeight;if(!t){i-=r}this.gridWrap.scrollTop=o+i;if(t&&e==="top"){this.gridWrap.scrollTop=o}this.timelineEntryHolder.style.transform=`translateY(${i}px)`;if(this.nowTimeCont){this.nowTimeCont.style.transform=`translateY(${i}px)`}this.cutEntryNodesByGrid(n,i);this.checkTimelineScroll()},complete:()=>{a.remove();this.timelineEntryHolder.style.transform="none";this.resetNowTime();if(t){this.showHourLines()}this.displayEntries();this.denySwitch=false;this.checkTimelineScroll()}}).animate()};i.prototype.cutEntryNodesByGrid=function(e,t){for(const i of e){const e=parseInt(i.offsetTop)+t;const s=e+i.offsetHeight;const a=parseInt(this.bottomOffHours.offsetTop)+this.bottomOffHours.offsetHeight-this.offHoursCollapsedHeight;if(s>a){const e=i.offsetHeight-(s-a);if(e>0){i.style.height=e+"px"}else{i.remove()}}if(e<0&&i.querySelector(".calendar-event-block-text")){const t=i.offsetHeight+e;i.style.top=parseInt(i.style.top)-e+"px";if(t>0){i.style.height=t+"px"}else{i.remove()}}}};i.prototype.switchOffHoursProps=function(e){const t=this.util.getWorkTime();if(e){this.toggleOffHoursClasses(this.offHoursCollapseClass,this.offHoursClass);this.setExpandedOffHoursHeight(t);this.displayOffHourLines(t);this.util.setUserOption("collapseOffHours","N")}else{this.toggleOffHoursClasses(this.offHoursClass,this.offHoursCollapseClass);this.setCollapsedOffHoursHeight(t);this.hideOffHourLines(t);this.util.setUserOption("collapseOffHours","Y")}};i.prototype.toggleOffHoursClasses=function(e,t){this.topOffHours.classList.add(t);this.bottomOffHours.classList.add(t);this.topOffHours.classList.remove(e);this.bottomOffHours.classList.remove(e)};i.prototype.setExpandedOffHoursHeight=function(e){this.gridRow.style.height=this.gridLineHeight*24+40+"px";this.topOffHours.style.height=this.gridLineHeight*e.start+1+"px";this.bottomOffHours.style.height=this.gridLineHeight*(24-e.end)+1+"px";this.bottomOffHours.style.top=this.gridLineHeight*e.end+"px";this.updateGridRowShadowHeight()};i.prototype.setCollapsedOffHoursHeight=function(e){this.gridRow.style.height=this.gridLineHeight*(e.end-e.start)+30+"px";this.topOffHours.style.height=this.offHoursCollapsedHeight+"px";this.bottomOffHours.style.height=this.offHoursCollapsedHeight+"px";this.bottomOffHours.style.top=(e.end-e.start)*this.gridLineHeight+9+"px";this.updateGridRowShadowHeight()};i.prototype.displayOffHourLines=function(e){for(let t in this.timeLinesIndex){if(this.timeLinesIndex.hasOwnProperty(t)){if(t<e.start||t>e.end){this.timeLinesIndex[t].style.display="block";this.timeLinesIndex[t].style.opacity=1}this.timeLinesIndex[t].style.top=t*this.gridLineHeight+"px"}}};i.prototype.hideOffHourLines=function(e){for(let t in this.timeLinesIndex){if(this.timeLinesIndex.hasOwnProperty(t)){if(t<=e.start||t>=e.end){this.timeLinesIndex[t].style.opacity=0;this.timeLinesIndex[t].style.pointerEvents="none"}if(t>=e.end){this.timeLinesIndex[t].style.top=(e.end-e.start)*this.gridLineHeight+"px"}else{this.timeLinesIndex[t].style.top=(t-e.start)*this.gridLineHeight+"px"}}}};i.prototype.showHourLines=function(){for(const e in this.timeLinesIndex){if(this.timeLinesIndex.hasOwnProperty(e)){this.timeLinesIndex[e].style.opacity="";this.timeLinesIndex[e].style.display=""}}};i.prototype.removeOffHoursEntries=function(){const e=this.util.getWorkTime();for(const t of this.entries){if(!t.fullDay&&(t.from.getHours()>=e.end||t.to.getHours()<=e.start)&&t.parts[0]&&t.parts[0].params){t.parts[0].params.wrapNode.style.minHeight=0+"px"}}this.days.forEach((e=>{if(e.collapsedWrap&&e.collapsedWrap.top){e.collapsedWrap.top.destroy()}if(e.collapsedWrap&&e.collapsedWrap.bottom){e.collapsedWrap.bottom.destroy()}}))};i.prototype.checkTimelineScroll=function(){if(!this.scrollbarWidth){this.scrollbarWidth=this.util.getScrollbarWidth()}const e=this.gridWrap.scrollHeight>this.gridWrap.offsetHeight?this.scrollbarWidth:0;if(this.titleCont){this.titleCont.style.paddingRight=e+"px"}if(this.fullDayEventsHolderCont&&this.topEntryHolder&&parseInt(this.topEntryHolder.style.right)!==parseInt(e)){this.gridWrap.style.width="100%";this.topEntryHolder.style.right=e+"px";this.fullDayEventsHolderCont.style.paddingRight=e+"px"}};i.prototype.getDayGridHeight=function(){return 756};i.prototype.updateGridRowShadowHeight=function(){if(this.isCollapsedOffHours){this.gridRowShadow.style.height=parseInt(this.gridRow.style.height)-38+"px";BX.removeClass(this.gridRowShadow,"calendar-grid-week-row-shadow-off-hours")}else{this.gridRowShadow.style.height=parseInt(this.gridRow.style.height)-40+"px";BX.addClass(this.gridRowShadow,"calendar-grid-week-row-shadow-off-hours")}};i.prototype.handleClick=function(e){if(this.isActive()){if(!e)e={};var t,i;if(e.specialTarget&&(i=e.specialTarget.getAttribute("data-bx-calendar-entry"))){this.handleEntryClick({uid:i,specialTarget:e.specialTarget,target:e.target,e:e.e})}else if(e.specialTarget&&(t=e.specialTarget.getAttribute("data-bx-calendar-show-all-events"))){this.deselectEntry();if(this.dayIndex[t]!==undefined&&this.days[this.dayIndex[t]]){this.showAllEventsInPopup({day:this.days[this.dayIndex[t]],entrieList:this.days[this.dayIndex[t]].entries.topList})}}else if(!this.calendar.util.readOnlyMode()&&this.entryController.canDo(true,"add_event")&&(t=e.specialTarget&&e.specialTarget.getAttribute("data-bx-calendar-week-day"))&&!this.isCompactFormShown()){this.deselectEntry();this.showCompactEditFormForNewEntry({entry:this.buildTopNewEntryWrap({dayFrom:this.days[this.dayIndex[t]],holder:this.topEntryHolder})})}}};i.prototype.getEvents=function(e){let t=this.name==="week"?this.days[e.dayOffset]?.entries?.timeline:this.days[0].entries.timeline;t=t||[];const i=t.map((e=>e.entry));return i.filter((e=>{let t=false;if(e.parts[0].params){t=e.parts[0].params.wrapNode.style.opacity==="0"}return e.accessibility!=="free"&&e!==this.draggedEntry&&!t}))};i.prototype.correctDuration=function(e){let t=false;let i=new Date(e.dayFrom.date.getTime());let s=new Date(e.dayFrom.date.getTime());i.setHours(e.timeFrom.h,e.timeFrom.m,0,0);s.setHours(e.timeTo.h,e.timeTo.m,0,0);const a=new Date(i.getTime());const r=new Date(s.getTime());let o=this.name==="week"?this.days[e.dayFrom.dayOffset]?.entries?.timeline:this.days[0].entries.timeline;o=o||[];for(var n=0;n<o.length;n++){if(o[n].entry.accessibility==="free"){continue}if(i<o[n].entry.to&&i>=o[n].entry.from){i=o[n].entry.to;if(!t){s.setHours(i.getHours()+1);s.setMinutes(i.getMinutes())}}if(s>o[n].entry.from&&i<=o[n].entry.from){t=true;s=o[n].entry.from}}const l=(i-a)/6e4;if(l>=30){e.timeFrom.h=a.getHours();e.timeFrom.m=a.getMinutes();e.timeTo.h=r.getHours();e.timeTo.m=r.getMinutes()}else{e.timeFrom.h=i.getHours();e.timeFrom.m=i.getMinutes();e.timeTo.h=s.getHours();e.timeTo.m=s.getMinutes()}};i.prototype.correctEntryWrap=function(e){var t=e.timeFrom.h+e.timeFrom.m/60;var i=e.timeTo.h+e.timeTo.m/60;e.entryNode.style.height=(i-t)*this.gridLineHeight-3+"px";var s=this.util.getWorkTime();if(this.isCollapsedOffHours){t=Math.max(t,s.start);this.startMousePos=this.offtimeTuneBaseZeroPos+((t-s.start)*this.gridLineHeight+1)}else{this.startMousePos=this.offtimeTuneBaseZeroPos+(t*this.gridLineHeight+1)}};i.prototype.getDayByCode=function(e){return this.days[this.dayIndex[e]]};i.prototype.handleMousedown=function(e){const t=e.which===3;if(t||!this.isActive()||this.isCompactFormShown()){return}var i;var s=this.calendar.util.findTargetNode(e.target||e.srcElement);if((this.calendar.util.type==="location"||!this.calendar.util.readOnlyMode())&&this.entryController.canDo(true,"add_event")&&(i=s&&s.getAttribute("data-bx-calendar-timeline-day"))){BX.unbind(document,"mousemove",BX.proxy(this.handleMousemove,this));BX.unbind(document,"mouseup",BX.proxy(this.handleMouseup,this));BX.bind(document,"mousemove",BX.proxy(this.handleMousemove,this));BX.bind(document,"mouseup",BX.proxy(this.handleMouseup,this));BX.addCustomEvent(this.calendar,"keyup",BX.proxy(this.checkKeyup,this));this.canMoveOnCreate=false;setTimeout((()=>{this.canMoveOnCreate=true}),100);this.createEntryMode=true;this.offtimeTuneBaseZeroPos=BX.pos(this.timeLinesCont).top;this.startMousePos=Math.max(this.offtimeTuneBaseZeroPos+this.gridWrap.scrollTop,this.calendar.util.getMousePos(e).y);this.newEntry=this.buildTimelineNewEntryWrap({dayFrom:this.days[this.dayIndex[i]],holder:this.timelineEntryHolder});this.newEntry.dayFrom=this.days[this.dayIndex[i]];this.newEntry.timeFrom=this.getTimeByPos(this.startMousePos-this.offtimeTuneBaseZeroPos,30,true);var a=this.util.getWorkTime();var r=this.newEntry.timeFrom.h+this.newEntry.timeFrom.m/60;if(this.isCollapsedOffHours){r=Math.max(r,a.start);this.startMousePos=this.offtimeTuneBaseZeroPos+((r-a.start)*this.gridLineHeight+1)}else{this.startMousePos=this.offtimeTuneBaseZeroPos+(r*this.gridLineHeight+1)}if(this.newEntry.timeFrom.h===23){this.newEntry.timeTo={h:23,m:59}}else{this.newEntry.timeTo={h:this.newEntry.timeFrom.h+1,m:this.newEntry.timeFrom.m}}this.correctDuration(this.newEntry);this.correctEntryWrap(this.newEntry);this.updateCompactness(this.newEntry.entryNode);this.newEntry.changeTimeCallback(this.newEntry.timeFrom,this.newEntry.timeTo);this.newEntry.entryNode.style.top=this.startMousePos-BX.pos(this.outerGrid).top+"px"}};i.prototype.handleMousemove=function(e){if(this.createEntryMode&&this.canMoveOnCreate){var t=this.isCollapsedOffHours?9:20;var i=this.calendar.util.getMousePos(e).y;var s=Math.min(Math.max(i-this.startMousePos,10),parseInt(this.gridRow.style.height)-parseInt(this.newEntry.entryNode.style.top)-t);this.newEntry.entryNode.style.height=s+"px";this.updateCompactness(this.newEntry.entryNode);this.newEntry.timeTo=this.getTimeByPos(s+this.startMousePos-this.offtimeTuneBaseZeroPos);this.newEntry.changeTimeCallback(this.newEntry.timeFrom,this.newEntry.timeTo)}};i.prototype.handleMouseup=function(e){BX.removeCustomEvent(this.calendar,"keyup",BX.proxy(this.checkKeyup,this));if(this.createEntryMode){var t=new Date(this.newEntry.dayFrom.date.getTime()),i=new Date(this.newEntry.dayFrom.date.getTime());t.setHours(this.newEntry.timeFrom.h,this.newEntry.timeFrom.m,0,0);i.setHours(this.newEntry.timeTo.h,this.newEntry.timeTo.m,0,0);this.deselectEntry();this.showCompactEditFormForNewEntry({entry:this.newEntry,entryTime:{from:t,to:i}});this.createEntryMode=false}};i.prototype.checkKeyup=function(e){var t=this.util.getKeyCodes();if(e.keyCode===t["escape"]&&this.createEntryMode&&this.newEntry){BX.remove(this.newEntry.entryNode);this.createEntryMode=false;this.handleMouseup()}};i.prototype.isCompactFormShown=function(){const e=BX.Calendar.EntryManager.getCompactViewForm(false);return e&&e.isShown()};i.prototype.buildTopNewEntryWrap=function(e){var t=this,i,s,a,r,o,n="calendar-event-line-wrap",l=0,d=e.dayFrom,h,p,f=1,c=BX.Calendar.SectionManager.getNewEntrySectionId(),u=this.calendar.sectionManager.getSection(c)||this.calendar.roomsManager.getRoom(c),m=u.color;i=this.entryController.getTimeForNewEntry(d.date);s=this.entryController.getDefaultEntryName();a=e.holder.appendChild(BX.create("DIV",{props:{className:n},style:{top:0,left:this.dayCount>1?"calc((100% / "+this.dayCount+") * ("+(d.dayOffset+1)+" - 1) + 2px)":"2px",width:"calc("+f+" * 100% / "+this.dayCount+" - "+l+"px)"}}));o=a.appendChild(BX.create("DIV",{props:{className:"calendar-event-line-inner-container"}}));r=o.appendChild(BX.create("DIV",{props:{className:"calendar-event-line-inner"}}));r.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-time"},text:this.calendar.util.formatTime(i.from.getHours(),i.from.getMinutes())}));r.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-text"},text:s}));a.style.backgroundColor=m;a.style.borderColor=m;a.style.opacity=0;var y=BX.adjust(this.fullDayEventsCont.appendChild(a.cloneNode(true)),{props:{className:"calendar-event-line-clone"},style:{width:a.offsetWidth-4+"px",height:a.offsetHeight+"px",top:3+"px",left:a.offsetLeft+43+"px",opacity:1}});this.updateCompactness(y);if(a){BX.remove(a,true)}p=y.querySelector(".calendar-event-line-text");h=y.querySelector(".calendar-event-line-time");r=y.querySelector(".calendar-event-line-inner");var g={entryNode:y,nameNode:p,timeNode:h,innerNode:r,section:u,entryName:s,entryTime:i,changeTimeCallback:function(e,i){if(e.getHours&&i.getHours){h.innerHTML=t.calendar.util.formatTime(e.getHours(),e.getMinutes())}else{h.innerHTML=t.calendar.util.formatTime(e.h,e.m)}},changeNameCallback:function(e){p.innerHTML=BX.util.htmlspecialchars(e)}};this.selectEntryPart(g,m,false);return g};i.prototype.buildTimelineNewEntryWrap=function(e){var t=this,i,s,a,r,o="calendar-event-block-wrap",n=e.dayFrom,l,d,h,p,f=BX.Calendar.SectionManager.getNewEntrySectionId(),c=this.calendar.sectionManager.getSection(f)||this.calendar.roomsManager.getRoom(f),u=c.color;i=this.entryController.getTimeForNewEntry(n.date);s=this.entryController.getDefaultEntryName();a=e.holder.appendChild(BX.create("DIV",{props:{className:o},style:{height:this.gridLineHeight+"px",minHeight:"20px",left:this.dayCount>1?"calc((100% / "+this.dayCount+") * "+n.dayOffset+" + 2px)":"2px",width:"calc(100% / "+this.dayCount+" - "+this.lastEntryWidthOffset+"px)"}}));r=a.appendChild(BX.create("DIV",{props:{className:"calendar-event-block-inner"}}));l=this.calendar.util.formatTime(i.from.getHours(),i.from.getMinutes())+" – "+this.calendar.util.formatTime(i.to.getHours(),i.to.getMinutes());r.appendChild(BX.create("SPAN",{props:{className:"calendar-event-block-text"},style:{color:"#fff"},text:s}));r.appendChild(BX.create("SPAN",{props:{className:"calendar-event-block-time"},style:{color:"#fff"},html:l}));r.style.backgroundColor=u;var m=BX.adjust(this.outerGrid.appendChild(a.cloneNode(true)),{props:{className:"calendar-event-line-clone calendar-event-block-wrap active"},style:{width:a.offsetWidth-3+"px",height:a.offsetHeight+"px",left:a.offsetLeft+42+"px",opacity:1}});if(a){BX.remove(a,true)}h=m.querySelector(".calendar-event-block-text");d=m.querySelector(".calendar-event-block-time");r=m.querySelector(".calendar-event-block-inner");p=m.appendChild(BX.create("DIV",{props:{className:"calendar-event-bind-node"}}));if(this.dayCount===1)p.style.right="10%";else p.style.left="0";var y={entryNode:m,innerNode:r,section:c,entryName:s,bindNode:p,blockBackgroundNode:r,changeTimeCallback:function(e,i){var s;if(e.getHours&&i.getHours){s=t.calendar.util.formatTime(e.getHours(),e.getMinutes())+" – "+t.calendar.util.formatTime(i.getHours(),i.getMinutes())}else{s=t.calendar.util.formatTime(e.h,e.m)+" – "+t.calendar.util.formatTime(i.h,i.m)}d.innerHTML=s},changeNameCallback:function(e){h.innerHTML=BX.util.htmlspecialchars(e)}};this.selectEntryPart(y,u,false);return y};i.prototype.updateCompactness=function(t){const i=t.querySelector(".calendar-event-block-inner");const s=t.querySelector(".calendar-event-block-text");const a=t.querySelector(".calendar-event-block-time");if(!s||!a||!i){return}BX.removeClass(t,"calendar-event-block-compact");BX.removeClass(t,"calendar-event-block-hide-collab");s.style.overflow="visible";if(s.offsetHeight+a.offsetHeight>i.offsetHeight-10){const r=parseInt(e.getComputedStyle(s).lineHeight);const o=i.offsetHeight-a.offsetHeight-10;const n=Math.floor(o/r);if(n<=1){BX.addClass(t,"calendar-event-block-compact")}}s.style.overflow="";const r=t.querySelector(".calendar-event-block-title");if(!r){return}if(BX.hasClass(t,"calendar-event-block-compact")){const e=r.offsetWidth;const t=[...r.children].reduce(((e,t)=>e+t.offsetWidth+parseInt(getComputedStyle(t).marginRight)),0);if(t<e){r.style.width=`${t+1}px`}}const o=t.querySelector(".calendar-event-block-collab");if(!o){return}if(s.offsetHeight+a.offsetHeight+o.offsetHeight>i.offsetHeight){BX.addClass(t,"calendar-event-block-hide-collab")}if(s.offsetHeight+a.offsetHeight+o.offsetHeight>i.offsetHeight-10){const r=parseInt(e.getComputedStyle(s).lineHeight);const n=i.offsetHeight-a.offsetHeight-o.offsetHeight-10;const l=Math.floor(n/r);if(l<=1){BX.addClass(t,"calendar-event-block-compact")}}};i.prototype.showCompactEditFormForNewEntry=function(e){this.showCompactEditForm({entryNode:e.entry.entryNode,bindNode:e.entry.bindNode,section:e.entry.section,entryTime:e.entryTime||e.entry.entryTime,entryName:e.entry.entryName,changeTimeCallback:e.entry.changeTimeCallback,changeNameCallback:e.entry.changeNameCallback,closeCallback:BX.delegate((function(){BX.remove(e.entry.entryNode)}),this)});BX.Event.EventEmitter.unsubscribeAll("BX.Calendar.CompactEventForm:onChange");BX.Event.EventEmitter.subscribe("BX.Calendar.CompactEventForm:onChange",function(e){if(e instanceof BX.Event.BaseEvent){var t=e.getData();var i=t.form.dateTimeControl.getValue()}}.bind(this))};i.prototype.showAllEventsInPopup=function(e){var t=e.entrieList||e.day.entries.list,i,s;i=BX.create("DIV",{props:{className:"calendar-all-events-popup calendar-custom-scroll"},events:{click:BX.proxy(this.calendar.handleViewsClick,this.calendar)}});t.sort(this.calendar.entryController.sort);var a,r;t.forEach((function(t){if(t.entry){if(t.entry.isTask()){if(!a){i.appendChild(BX.create("DIV",{props:{className:"calendar-event-title"},text:BX.message("EC_ENTRIES_TASKS")}));a=i.appendChild(BX.create("DIV",{props:{className:"calendar-event-block"}}))}this.displayEntryPiece({dayInCell:e.day.date,entry:t.entry,part:t.part,holder:a,popupMode:true})}else{if(!r){i.appendChild(BX.create("DIV",{props:{className:"calendar-event-title"},text:BX.message("EC_ENTRIES_EVENTS")}));r=i.appendChild(BX.create("DIV",{props:{className:"calendar-event-block"}}))}this.displayEntryPiece({dayInCell:e.day.date,entry:t.entry,part:t.part,holder:r,popupMode:true})}}}),this);s=BX.PopupWindowManager.create(this.calendar.id+"-all-events-popup",e.day.hiddenStorageText,{autoHide:true,closeByEsc:true,offsetTop:-2,offsetLeft:-50,lightShadow:true,content:i});s.setAngle({offset:118});s.show(true);this.allEventsPopup=s;BX.addCustomEvent(s,"onPopupClose",(function(){s.destroy()}))};i.prototype.displayEntryPiece=function(e){const t=e.entry;let i="calendar-event-line-wrap";if(t.isFullDay()){i+=" calendar-event-line-fill"}else if(t.isLongWithTime()){i+=" calendar-event-line-border"}if(t.getCurrentStatus()==="N"){i+=" calendar-event-line-refused"}if(t.isExpired()){i+=" calendar-event-line-past"}if(this.shouldEntryLookLikeSharing(t)){i+=" calendar-event-line-wrap-sharing";i+=" calendar-event-wrap-icon"}else if(this.shouldEntryLookLikeCollab(t)){i+=" calendar-event-line-wrap-collab";i+=" calendar-event-wrap-icon"}let s=t.color;if(t.isFullDay()){s=this.calendar.util.addOpacityToHex(t.color,.3)}else if(t.isLongWithTime()){s=this.calendar.util.addOpacityToHex(t.color,.5)}let a,r,o=0;if(!e.popupMode&&this.util.getDayCode(t.from)!==this.util.getDayCode(l.date)){i+=" calendar-event-line-start-yesterday";o+=8;a=this.getArrow("left",s,t.isFullDay())}if(!e.popupMode&&this.util.getDayCode(t.to)!==this.util.getDayCode(e.part.to.date)){i+=" calendar-event-line-finish-tomorrow";r=this.getArrow("right",s,t.isFullDay());o+=12}if(a&&!r){o+=4}o=o===0?5:o;const n=e.part.daysCount,l=e.part.from;let d=BX.create("DIV",{attrs:{"data-bx-calendar-entry":t.uid},props:{className:i},style:{top:0,left:"calc((100% / "+this.dayCount+") * ("+(l.dayOffset+1)+" - 1) + 2px)",width:"calc("+n+" * 100% / "+this.dayCount+" - "+o+"px)"}});if(a){BX.Dom.addClass();d.style.left="9px"}if(r){d.appendChild(r)}let h=d.appendChild(BX.create("DIV",{props:{className:"calendar-event-line-inner-container"}})),p=h.appendChild(BX.create("DIV",{props:{className:"calendar-event-line-inner"}}));const f=this.days[this.dayIndex[t.startDayCode]];const c=[...f.entries.topList].sort(((e,t)=>e.entry.from.getTime()>t.entry.from.getTime()?1:e.entry.from.getTime()<t.entry.from.getTime()?-1:0));const u=c.findIndex((e=>e.entry.uid===t.uid));if(u>=this.slotsCount&&c.length>this.slotsCount){t.isHiddenInPopup=true}let m=BX.create("DIV",{props:{className:"calendar-event-line-dot"}}),y,g;if(t.isInvited()){d.className+=" calendar-event-animate-counter-highlight";if(this.isFirstVisibleRecursiveEntry(t)){p.appendChild(BX.create("DIV",{props:{className:"calendar-event-invite-counter"},text:"1"}))}else{p.appendChild(m)}}else{p.appendChild(m)}if(t.isSharingEvent()){p.appendChild(BX.create("SPAN",{props:{className:"calendar-event-block-icon-sharing"}}))}if(t.isFullDay()){p.style.maxWidth="calc(200% / "+n+" - 3px)"}else if(t.isLongWithTime()){p.style.maxWidth="calc(200% / "+n+" - 3px)";let i=e.dayInCell;if(e.popupMode&&typeof i!=="undefined"){switch(this.util.getDayCode(i)){case this.util.getDayCode(t.from):y=p.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-time"},text:this.calendar.util.formatTime(t.from.getHours(),t.from.getMinutes())}));break;case this.util.getDayCode(t.to):let e=this.calendar.util.formatTime(t.to.getHours(),t.to.getMinutes());y=p.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-time"},text:BX.message("EC_JS_UNTIL_DATE").replace("#DATE#",e)}));break}p.style.width="calc(100% / "+n+" - 3px)"}}let C=p.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-text"},text:e.entry.name}));if(t.isFullDay()){h.style.backgroundColor=this.calendar.util.addOpacityToHex(t.color,.3);h.style.borderColor=this.calendar.util.addOpacityToHex(t.color,.3)}else{if(t.isLongWithTime()){h.style.borderColor=this.calendar.util.addOpacityToHex(t.color,.5)}m.style.backgroundColor=t.color}let w=e.holder||this.entryHolders[l.holderIndex];w.appendChild(d);if(t.opacity!==undefined){d.style.opacity=t.opacity}let T={wrapNode:d,nameNode:C,innerContainer:h,innerNode:p,timeNode:y||false,endTimeNode:g||false,dotNode:m};if(!e.popupMode){e.entry.registerPartNode(e.part,T)}this.calendar.dragDrop.registerEntry(d,e);return T};function s(){t.apply(this,arguments);this.initConfig();this.preBuild()}s.prototype=Object.create(i.prototype);s.prototype.constructor=s;s.prototype.show=function(){t.prototype.show.apply(this,arguments);this.buildDaysGrid();if(this.calendar.navCalendar)this.calendar.navCalendar.hide();this.loadEntries().then((e=>{this.entries=e;this.displayEntries()}));this.calendar.initialViewShow=false};s.prototype.initConfig=function(){i.prototype.initConfig.apply(this,arguments);this.name="week";this.title=BX.message("EC_VIEW_WEEK");this.contClassName="calendar-week-view";this.hotkey="W";this.gridWrapClass="calendar-grid-wrap";if(BX.isAmPmMode()){this.gridWrapClass+=" is-am-pm-mode"}this.fullDayContClass="calendar-grid-week-full-days-events-holder";this.outerGridClass="calendar-grid-week-container";this.gridClass="calendar-grid-week";this.gridClassCurrent="calendar-grid-week-current";this.gridClassNext="calendar-grid-week-left-slide";this.gridClassPrevious="calendar-grid-week-right-slide";this.changeNextClass="calendar-change-week-left-slide";this.changePreviousClass="calendar-change-week-right-slide";this.gridRowClass="calendar-grid-week-row";this.gridCellClass="calendar-grid-week-cell";this.gridTimelinesClass="calendar-grid-week-time-lines";this.gridTimelineHourClass="calendar-grid-week-time-line-hour";this.gridTimelineHourLabelClass="calendar-grid-week-time-line-hour-label";this.topEntryHolderClass="calendar-grid-week-events-holder";this.gridNowTimeClass="calendar-grid-week-time-line-hour-now";this.gridNowTimeLabelClass="calendar-grid-week-time-line-hour-label";this.gridNowTimeLineClass="calendar-grid-week-time-line-hour-now-line";this.gridNowTimeDotClass="calendar-grid-week-time-line-hour-now-dot";this.dayCount=7};s.prototype.setTitle=function(){var e=this.calendar.getViewRangeDate(),i=e.getTime(),s=new Date(e.getTime()+this.dayCount*this.calendar.util.dayLength);if(e.getMonth()!==s.getMonth()){t.prototype.setTitle.apply(this,[BX.date.format("f",i/1e3)+" - "+BX.date.format("f",s.getTime()/1e3)+(this.util.showWeekNumber()?", #GRAY_START#"+BX.message("EC_DATE_WEEK_NUMBER").replace("#WEEK_NUMBER#",this.util.getWeekNumber(i))+"#GRAY_END#":"")])}else{t.prototype.setTitle.apply(this,[BX.date.format("f",i/1e3)+(this.util.showWeekNumber()?", #GRAY_START#"+BX.message("EC_DATE_WEEK_NUMBER").replace("#WEEK_NUMBER#",this.util.getWeekNumber(i))+"#GRAY_END#":"")])}};s.prototype.getAdjustedDate=function(e,t,s){if(!e){e=new Date}if(t&&e.getTime()<t.start.getTime()){e=new Date(t.start.getTime())}if(t&&e.getTime()>t.end.getTime()){e=new Date(t.end.getTime())}var a=this.util.getWeekStart();while(this.util.getWeekDayByInd(e.getDay())!=a){e.setDate(e.getDate()-1)}if(s){t.start.setDate(e.getTime());t.end.setDate(e.getTime()+this.calendar.util.dayLength*this.dayCount)}return i.prototype.getAdjustedDate.apply(this,[e,t])};s.prototype.adjustViewRangeToDate=function(e){var t=this.util.getWeekStart();while(this.util.getWeekDayByInd(e.getDay())!=t){e.setDate(e.getDate()-1)}return i.prototype.adjustViewRangeToDate.apply(this,[e])};if(e.BXEventCalendar){e.BXEventCalendar.CalendarDayView=i;e.BXEventCalendar.CalendarWeekView=s}else{BX.addCustomEvent(e,"onBXEventCalendarInit",(function(){e.BXEventCalendar.CalendarDayView=i;e.BXEventCalendar.CalendarWeekView=s}))}function a(e){this.position=e.position;this.outerWrap=e.wrap;this.workTime=e.workTime;this.dayOffset=e.dayOffset;this.dayCount=e.dayCount;this.lastEntryWidthOffset=e.lastEntryWidthOffset;this.gridLineHeight=e.gridLineHeight;this.labelMessage=e.labelMessage;this.clickHandler=e.clickHandler;this.mouseoutHandler=e.mouseoutHandler;this.mouseoverHandler=e.mouseoverHandler;this.isInited=false;this.entryCount=0;this.create()}a.prototype={create:function(){this.wrap=this.outerWrap.appendChild(BX.create("DIV",{props:{className:"calendar-event-block-wrap calendar-event-block-wrap-more"},style:{top:this.position==="bottom"?(this.workTime.end-this.workTime.start)*this.gridLineHeight+"px":"-9px",left:this.dayCount>1?"calc((100% / "+this.dayCount+") * "+this.dayOffset+" + 2px)":"2px",width:"calc(100% / "+this.dayCount+" - "+this.lastEntryWidthOffset+"px)"}})).appendChild(BX.create("DIV",{props:{className:"calendar-event-block-inner"},html:'<div class="calendar-event-block-background" style="background-color: #808080;"></div>'}));if(BX.type.isFunction(this.clickHandler)){BX.bind(this.wrap,"click",this.clickHandler)}if(BX.type.isFunction(this.mouseoverHandler)){BX.bind(this.wrap,"mouseover",this.mouseoverHandler)}if(BX.type.isFunction(this.mouseoutHandler)){BX.bind(this.wrap,"mouseout",this.mouseoutHandler)}this.countContainer=this.wrap.appendChild(BX.create("span",{props:{className:"calendar-event-block-text"},html:'<span class="calendar-event-block-text-subtitle">'+this.labelMessage+"</span>"})).appendChild(BX.create("span",{props:{className:"calendar-event-block-text-total"}}));this.isInited=true},inited:function(){return this.isInited&&BX.isNodeInDom(this.wrap)},destroy:function(){BX.remove(this.wrap);this.isInited=false},addEntry:function(e){this.entryCount++;this.countContainer.innerHTML=this.entryCount}}})(window); //# sourceMappingURL=calendar-view-day-week.map.js