File manager - Edit - /home/web/vm-3fadc827.na4u.ru/www/bitrix/modules/calendar/install/js/calendar/new/calendar-view-month.min.js
Back
(function(e){var t=e.BXEventCalendarView;function a(){t.apply(this,arguments);this.name="month";this.title=BX.message("EC_VIEW_MONTH");this.contClassName="calendar-month-view";this.dayCount=7;this.slotHeight=20;this.eventHolderTopOffset=25;this.hotkey="M";this.preBuild()}a.prototype=Object.create(t.prototype);a.prototype.constructor=a;a.prototype.preBuild=function(){this.viewCont=BX.create("DIV",{props:{className:this.contClassName},style:{display:"none"}})};a.prototype.build=function(){this.titleCont=this.viewCont.appendChild(BX.create("DIV",{props:{className:"calendar-grid-month-row-days-week"}}));this.gridWrap=this.viewCont.appendChild(BX.create("DIV",{props:{className:"calendar-grid-wrap"}}));this.gridMonthContainer=this.gridWrap.appendChild(BX.create("DIV",{props:{className:"calendar-grid-month-container"}}));this.grid=this.gridMonthContainer.appendChild(BX.create("DIV",{props:{className:"calendar-grid-month calendar-grid-month-current"}}))};a.prototype.show=function(){t.prototype.show.apply(this,arguments);this.buildDaysTitle();this.buildDaysGrid();if(this.calendar.navCalendar)this.calendar.navCalendar.hide();this.displayEntries();this.calendar.initialViewShow=false};a.prototype.hide=function(){t.prototype.hide.apply(this,arguments)};a.prototype.increaseViewRangeDate=function(){this.changeViewRangeDate(1);var e=this.gridMonthContainer.appendChild(BX.create("DIV",{props:{className:"calendar-grid-month calendar-grid-month-next"+" "+this.animateClass}}));BX.addClass(this.grid,this.animateClass);this.setTitle();this.buildDaysGrid({grid:e});this.preloadEntries();setTimeout(BX.delegate((function(){BX.addClass(this.gridMonthContainer,"calendar-change-month-next");setTimeout(BX.delegate((function(){BX.removeClass(this.gridMonthContainer,"calendar-change-month-next");BX.removeClass(e,"calendar-grid-month-next");BX.addClass(e,"calendar-grid-month-current");BX.remove(this.grid);this.grid=e;BX.removeClass(this.grid,this.animateClass);this.displayEntries()}),this),400)}),this),0)};a.prototype.decreaseViewRangeDate=function(){this.changeViewRangeDate(-1);var e=this.gridMonthContainer.insertBefore(BX.create("DIV",{props:{className:"calendar-grid-month calendar-grid-month-previous"+" "+this.animateClass}}),this.grid);BX.addClass(this.grid,this.animateClass);this.setTitle();this.buildDaysGrid({grid:e});this.preloadEntries();setTimeout(BX.delegate((function(){BX.addClass(this.gridMonthContainer,"calendar-change-month-previous");setTimeout(BX.delegate((function(){BX.removeClass(this.gridMonthContainer,"calendar-change-month-previous");BX.removeClass(e,"calendar-grid-month-previous");BX.addClass(e,"calendar-grid-month-current");BX.remove(this.grid);this.grid=e;BX.removeClass(this.grid,this.animateClass);this.displayEntries()}),this),400)}),this),0)};a.prototype.getViewRange=function(){var e=this.calendar.getViewRangeDate(),t=new Date(e.getTime());t.setMonth(e.getMonth()+1);return{start:e,end:t}};a.prototype.changeViewRangeDate=function(e){var t=this.calendar.getViewRangeDate(),a=new Date(t.getTime());a.setMonth(a.getMonth()+e);this.calendar.setViewRangeDate(a);return a};a.prototype.adjustViewRangeToDate=function(e){var t=this.calendar.getViewRangeDate(),a=false;var i=e.getMonth()-t.getMonth();if(i==1){this.increaseViewRangeDate()}else if(i==-1){this.decreaseViewRangeDate()}else{if(e&&e.getTime){a=new Date(e.getTime());a.setDate(1);a.setHours(0,0,0,0);this.calendar.setViewRangeDate(a)}this.fadeAnimation(this.getContainer(),100,BX.delegate((function(){this.show();this.getContainer().style.opacity=0;this.showAnimation(this.getContainer(),300)}),this))}return a};a.prototype.getAdjustedDate=function(e,t){if(!e){e=new Date}if(e.getTime()<t.start.getTime()){e=new Date(t.start.getTime())}if(e.getTime()>t.end.getTime()){e=new Date(t.end.getTime())}var a=false;if(e&&e.getTime){a=new Date(e.getTime());a.setDate(1);a.setHours(0,0,0,0)}return a};a.prototype.buildDaysTitle=function(){BX.cleanNode(this.titleCont);var e,t,a=this.util.getWeekDays();for(e=0;e<a.length;e++){t=a[e];this.titleCont.appendChild(BX.create("DIV",{props:{className:"calendar-grid-month-cell"},html:'<span class="calendar-grid-cell-inner">'+BX.message("EC_MONTH_WEEK_TITLE").replace("#DAY_OF_WEEK#",t[1])+"</span>"}))}};a.prototype.buildDaysGrid=function(e){if(!e)e={};var t;var a;var i=e.grid||this.grid;var n=this.calendar.getViewRangeDate();var s=n.getFullYear();var r=n.getMonth();var o=this.util.getViewHeight();var d=BX.clone(this.getViewRange(),true);var l=new Date;BX.cleanNode(i);l.setFullYear(s,r,1);this.dayIndex={};this.days=[];this.entryHolders=[];this.currentMonthRow=false;this.monthRows=[];if(this.util.getWeekStart()!=BX.Calendar.Util.getWeekDayByInd(l.getDay())){a=this.util.getWeekDayOffset(BX.Calendar.Util.getWeekDayByInd(l.getDay()));l.setDate(l.getDate()-a);d.start=new Date(l.getTime());d.start.setHours(0,0,0,0);for(t=0;t<a;t++){this.buildDayCell({date:l,month:"previous",grid:i});l.setDate(l.getDate()+1)}}l.setFullYear(s,r,1);while(l.getMonth()==r){this.buildDayCell({date:l,grid:i});l.setDate(l.getDate()+1)}if(this.util.getWeekStart()!=BX.Calendar.Util.getWeekDayByInd(l.getDay())){a=this.util.getWeekDayOffset(BX.Calendar.Util.getWeekDayByInd(l.getDay()));l.setFullYear(s,r+1,1);for(t=a;t<7;t++){this.buildDayCell({date:l,month:"next",grid:i});l.setDate(l.getDate()+1)}d.end=new Date(l.getTime());d.end.setHours(23,59,59,59)}this.calendar.setDisplayedViewRange(d);if(this.monthRows.length>0){this.rowHeight=Math.round(o/this.monthRows.length);this.slotsCount=Math.floor((this.rowHeight-this.eventHolderTopOffset)/this.slotHeight);for(t=0;t<this.monthRows.length;t++){this.monthRows[t].style.height=this.rowHeight+"px"}}};a.prototype.buildDayCell=function(e){var t=e.date,a="",i=Math.round(t.getTime()/1e3)*1e3,n=t.getDay(),s=this.util.getDayCode(t),r=BX.Calendar.Util.getWeekDayByInd(n),o=false,d=this.util.getWeekStart()==r;if(d){this.currentMonthRow=e.grid.appendChild(BX.create("DIV",{props:{className:"calendar-grid-month-row"}}));this.monthRows.push(this.currentMonthRow);if(this.util.showWeekNumber()){o=this.util.getWeekNumber(i)}}if(e.month==="previous"){a+=" calendar-grid-previous-month-day"}else if(e.month==="next"){a+=" calendar-grid-next-month-day"}if(this.util.isHoliday(t)){a+=" calendar-grid-holiday"}if(this.util.isToday(t)){a+=" calendar-grid-today"}this.days.push({date:new Date(t.getTime()),dayOffset:this.util.getWeekDayOffset(r),rowIndex:this.monthRows.length-1,holderIndex:this.entryHolders.length,node:this.currentMonthRow.appendChild(BX.create("DIV",{props:{className:BX.util.trim("calendar-grid-month-cell"+a)},attrs:{"data-bx-calendar-month-day":s},html:'<span class="calendar-grid-cell-inner">'+'<span class="calendar-num-day" data-bx-calendar-date="'+i+'">'+(t.getDate()==1?BX.message("EC_MONTH_SHORT").replace("#MONTH#",BX.date.format("M",i/1e3)).replace("#DATE#",t.getDate()):t.getDate())+"</span>"+(o?'<span class="calendar-num-week" data-bx-cal-time="'+i+'" data-bx-calendar-weeknumber="'+o+'">'+o+"</span>":"")+"</span>"})),dayCode:s});this.dayIndex[this.days[this.days.length-1].dayCode]=this.days.length-1;this.calendar.dragDrop.registerDay(this.days[this.days.length-1]);if(this.currentMonthRow&&this.util.getWeekEnd()===r){this.entryHolders.push(this.currentMonthRow.appendChild(BX.create("DIV",{props:{className:"calendar-grid-month-events-holder"}})))}};a.prototype.setTitle=function(){var e=this.calendar.getViewRangeDate();t.prototype.setTitle.apply(this,[BX.date.format("f",e.getTime()/1e3)+", #GRAY_START#"+e.getFullYear()+"#GRAY_END#"])};a.prototype.displayEntries=function(e){var t,a,i,n,s,r,o,d,l,h,p=[],c,g,y=this.calendar.getDisplayedViewRange();if(!e)e={};if(e.reloadEntries!==false){this.entries=this.entryController.getList({showLoader:!!(this.entries&&!this.entries.length),startDate:new Date(y.start.getFullYear(),y.start.getMonth(),1),finishDate:new Date(y.end.getFullYear(),y.end.getMonth()+1,1),viewRange:y,finishCallback:BX.proxy(this.displayEntries,this)});if(this.entries===false){return}}this.entryHolders.forEach((function(e){BX.cleanNode(e)}));this.days.forEach((function(e){e.slots=[];e.entries={list:[],started:[],hidden:[]}}));if(this.entries===false||!this.entries||!this.entries.length)return;for(i=0;i<this.entries.length;i++){s=this.entries[i];this.entriesIndex[s.uid]=i;s.cleanParts();h=false;for(o=this.dayIndex[s.startDayCode];o<this.days.length;o++){l=this.days[o];if(l.dayCode===s.startDayCode||h&&l.dayOffset===0){h=true;r=s.startPart({from:l,daysCount:0});l.entries.started.push({entry:s,part:r})}if(h){l.entries.list.push({entry:s,part:r});r.daysCount++;r.to=l;if(l.dayCode===s.endDayCode||l.dayOffset===this.dayCount-1){p.push({part:r,entry:s});if(l.dayCode===s.endDayCode){break}}}}}for(i=0;i<p.length;i++){this.displayEntryPiece(p[i])}for(o=0;o<this.days.length;o++){l=this.days[o];if(l.entries.started.length>0){if(l.entries.started.length>0){l.entries.started.sort(this.calendar.entryController.sort)}for(i=0;i<l.entries.started.length;i++){a=l.entries.started[i];if(a){s=a.entry;d=a.part;c=false;for(n=0;n<this.slotsCount;n++){if(l.slots[n]!==false){this.occupySlot({slotIndex:n,startIndex:o,endIndex:o+d.daysCount});c=true;s.getWrap(d.partIndex).style.top=n*this.slotHeight+"px";break}}if(!c){t=l.entries.started[i-1];if(t){l.entries.hidden.push(t);t.entry.getWrap(t.part.partIndex).style.display="none"}l.entries.hidden.push(a);s.getWrap(d.partIndex).style.display="none"}}}}if(l.entries.list.length>0){g=false;for(i=0;i<l.entries.list.length;i++){if(l.entries.list[i].part.params.wrapNode.style.display==="none"){g=true;break}}if(g){l.hiddenStorage=this.entryHolders[l.holderIndex].appendChild(BX.create("DIV",{props:{className:"calendar-event-line-wrap calendar-event-more-btn-container"},attrs:{"data-bx-calendar-show-all-events":l.dayCode},style:{top:this.rowHeight-47+"px",left:"calc((100% / "+this.dayCount+") * ("+(l.dayOffset+1)+" - 1) + 2px)",width:"calc(100% / "+this.dayCount+" - 3px)"}}));l.hiddenStorageText=l.hiddenStorage.appendChild(BX.create("span",{props:{className:"calendar-event-more-btn"}}));l.hiddenStorage.style.display="block";l.hiddenStorageText.innerHTML=BX.message("EC_SHOW_ALL")+" "+l.entries.list.length}else if(l.hiddenStorage){l.hiddenStorage.style.display="none"}}}BX.addClass(this.gridMonthContainer,"calendar-events-holder-show")};a.prototype.displayEntryPiece=function(e){var t=false,a=e.entry,i=e.part.from,n=e.part.daysCount,s,r,o,d,l,h,p,c="calendar-event-line-wrap",g=0,y,f,u=e.holder||this.entryHolders[i.holderIndex];if(u){if(a.isFullDay()){c+=" calendar-event-line-fill"}else if(a.isLongWithTime()){c+=" calendar-event-line-border"}if(a.getCurrentStatus()==="N"){c+=" calendar-event-line-refused"}if(a.isExpired()){c+=" calendar-event-line-past"}if(!e.popupMode&&this.util.getDayCode(a.from)!==this.util.getDayCode(i.date)){c+=" calendar-event-line-start-yesterday";g+=8;y=this.getArrow("left",a.color,a.isFullDay())}if(!e.popupMode&&this.util.getDayCode(a.to)!==this.util.getDayCode(e.part.to.date)){c+=" calendar-event-line-finish-tomorrow";f=this.getArrow("right",a.color,a.isFullDay());g+=12}if(y&&!f){g+=4}if(g==0){g=5}s=BX.create("DIV",{attrs:{"data-bx-calendar-entry":a.uid},props:{className:c},style:{top:0,left:"calc((100% / "+this.dayCount+") * ("+(i.dayOffset+1)+" - 1) + 2px)",width:"calc("+n+" * 100% / "+this.dayCount+" - "+g+"px)"}});if(y){s.appendChild(y);s.style.left="9px"}if(f){s.appendChild(f)}p=s.appendChild(BX.create("DIV",{props:{className:"calendar-event-line-inner-container"}}));o=p.appendChild(BX.create("DIV",{props:{className:"calendar-event-line-inner"}}));r=o.appendChild(BX.create("DIV",{props:{className:"calendar-event-line-dot"}}));if(a.isFullDay()){o.style.maxWidth="calc(200% / "+n+" - 3px)"}else if(a.isLongWithTime()){s.style.borderColor=a.color;o.style.maxWidth="calc(200% / "+n+" - 3px)";if(parseInt(e.part.partIndex)===0&&a.to.getDate()!==e.part.from.date.getDate()&&a.from.getDate()===e.part.from.date.getDate()){if(this.util.getDayCode(a.from)!==this.util.getDayCode(i.date)){l=o.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-time"},text:this.calendar.util.formatTime(a.to.getHours(),a.to.getMinutes())}))}else{l=o.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-time"},text:this.calendar.util.formatTime(a.from.getHours(),a.from.getMinutes())}))}o.style.width="calc(100% / "+n+" - 3px)"}if(parseInt(e.part.partIndex)===a.parts.length-1&&a.from.getDate()!==e.part.to.date.getDate()&&a.to.getDate()===e.part.to.date.getDate()){var m=a.parts.length;if(a.from.getDate()!==e.part.from.date.getDate()){m++}if(n>1&&m>1){o.style.width="calc("+(n-1)+"00% / "+n+" - 3px)"}if(!e.popupMode&&n){h=o.appendChild(BX.create("SPAN",{props:{className:m>1&&n===1?"calendar-event-line-time":"calendar-event-line-expired-time"},text:this.calendar.util.formatTime(a.to.getHours(),a.to.getMinutes())}))}}}else{l=o.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-time"},text:this.calendar.util.formatTime(a.from.getHours(),a.from.getMinutes())}))}d=o.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-text"}})).appendChild(BX.create("SPAN",{text:e.entry.name}));if(a.isFullDay()){p.style.backgroundColor=this.calendar.util.hexToRgba(a.color,.3);p.style.borderColor=this.calendar.util.hexToRgba(a.color,.3)}else{if(a.isLongWithTime()){p.style.borderColor=this.calendar.util.hexToRgba(a.color,.5)}r.style.backgroundColor=a.color}u.appendChild(s);if(a.opacity!==undefined){s.style.opacity=a.opacity}t={wrapNode:s,nameNode:d,innerContainer:p,innerNode:o,timeNode:l||false,endTimeNode:h||false,dotNode:r};if(!e.popupMode){e.entry.registerPartNode(e.part,t)}this.calendar.dragDrop.registerEntry(s,e)}return t};a.prototype.refreshEventsOnWeek=function(e){var t=e*7,a=(e+1)*7,i,n,s,r,o,d,l,h,p=[],c=5,g=0;for(o=0;o<c;o++)p[o]=0;for(n=t;n<a;n++){i=this.activeDateObjDays[n];if(!i)continue;i.arEvents.hidden=[];r=i.arEvents.begining;h=[];if(r.length>0){r.sort((function(e,t){if(t.daysCount==e.daysCount&&e.daysCount==1)return e.oEvent.DT_FROM_TS-t.oEvent.DT_FROM_TS;return t.daysCount-e.daysCount}));e:for(s=0;s<r.length;s++){d=r[s];if(!d)continue;if(!this.arEvents[d.oEvent.ind]){i.arEvents.begining=r=BX.util.deleteFromArray(r,s);d=r[s];if(!d)continue}for(o=0;o<this.maxEventCount;o++){if(p[o]-g<=0){p[o]=g+d.daysCount;this.ShowEventOnLevel(d.oEvent.oParts[d.partInd],o,e);continue e}}h[d.oEvent.ID]=true;i.arEvents.hidden.push(d)}}l=i.arEvents.all;for(var y=0;y<l.length;y++){d=l[y];if(!d||h[d.oEvent.ID]){continue}if(!this.arEvents[d.oEvent.ind]){i.arEvents.all=l=BX.util.deleteFromArray(l,y);d=l[y];if(!d){continue}}if(d.oEvent.oParts&&d.partInd!=undefined&&d.oEvent.oParts[d.partInd]&&d.oEvent.oParts[d.partInd].style.display=="none"){i.arEvents.hidden.push(d)}}g++}};a.prototype.handleClick=function(e){if(this.isActive()){if(!e)e={};var t,a;if(e.specialTarget&&(a=e.specialTarget.getAttribute("data-bx-calendar-entry"))){this.handleEntryClick({uid:a,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]]})}}else if((this.calendar.util.type==="location"||!this.calendar.util.readOnlyMode())&&this.entryController.canDo(false,"add_event")&&(t=e.specialTarget&&e.specialTarget.getAttribute("data-bx-calendar-month-day"))){this.deselectEntry();if(this.dayIndex[t]!==undefined&&this.days[this.dayIndex[t]]){this.showNewEntryWrap({dayFrom:this.days[this.dayIndex[t]]})}}}};a.prototype.showNewEntryWrap=function(e){var t,a,i,n,s,r="calendar-event-line-wrap",o=0,d=e.dayFrom,l=1,h=this.entryHolders[d.holderIndex],p=BX.Calendar.SectionManager.getNewEntrySectionId(),c=this.calendar.sectionManager.getSection(p)||this.calendar.roomsManager.getRoom(p),g=c.color;var y=BX.Calendar.EntryManager.getCompactViewForm(false);if(y&&y.isShown()){return}t=this.entryController.getTimeForNewEntry(d.date);a=this.entryController.getDefaultEntryName();i=BX.create("DIV",{props:{className:r},style:{opacity:0,top:0,left:"calc((100% / "+this.dayCount+") * ("+(d.dayOffset+1)+" - 1) + 2px)",width:"calc("+l+" * 100% / "+this.dayCount+" - "+o+"px)"}});s=i.appendChild(BX.create("DIV",{props:{className:"calendar-event-line-inner-container"}}));n=s.appendChild(BX.create("DIV",{props:{className:"calendar-event-line-inner"}}));n.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-time"},style:{color:"#fff"},text:this.calendar.util.formatTime(t.from.getHours(),t.from.getMinutes())}));n.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-text"},style:{color:"#fff"},text:a}));i.style.backgroundColor=g;i.style.borderColor=g;h.appendChild(i);var f=BX.adjust(this.gridMonthContainer.appendChild(i.cloneNode(true)),{props:{className:"calendar-event-line-clone"},style:{width:i.offsetWidth-3+"px",height:i.offsetHeight+"px",top:h.offsetTop+h.parentNode.offsetTop+"px",left:i.offsetLeft+"px"}});BX.addClass(h,"shifted");h.style.height=(this.slotsCount-1)*this.slotHeight+"px";setTimeout((function(){f.style.opacity="1"}),100);setTimeout(BX.delegate((function(){this.showCompactEditForm({entryTime:t,entryName:a,nameNode:f.querySelector(".calendar-event-line-text"),timeNode:f.querySelector(".calendar-event-line-time"),entryNode:f,section:c,closeCallback:function(){BX.cleanNode(f,true);BX.cleanNode(i,true);var e=this.gridWrap.querySelector(".calendar-grid-month-events-holder.shifted");if(e){BX.removeClass(e,"shifted");e.style.height="1px"}}.bind(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&&f&&f.parentNode){var t=e.getData();var a=t.form.dateTimeControl.getValue();var n=this.util.getDayCode(a.from);if(n&&this.dayIndex[n]!==undefined&&this.days[this.dayIndex[n]]){var s=this.days[this.dayIndex[n]];i.style.left="calc((100% / "+this.dayCount+") * ("+(s.dayOffset+1)+" - 1) + 2px)";var r=this.gridWrap.querySelector(".calendar-grid-month-events-holder.shifted");if(r){BX.removeClass(r,"shifted");r.style.height="1px"}var o=this.entryHolders[s.holderIndex];o.appendChild(i);BX.adjust(f,{style:{width:i.offsetWidth-3+"px",height:i.offsetHeight+"px",top:o.offsetTop+o.parentNode.offsetTop+"px",left:i.offsetLeft+"px"}});BX.addClass(o,"shifted");o.style.height=(this.slotsCount-1)*this.slotHeight+"px"}var d=t.form.colorSelector.getValue();f.style.background=d;f.style.borderColor=d}}.bind(this))}),this),200)};if(e.BXEventCalendar){e.BXEventCalendar.CalendarMonthView=a}else{BX.addCustomEvent(e,"onBXEventCalendarInit",(function(){e.BXEventCalendar.CalendarMonthView=a}))}})(window); //# sourceMappingURL=calendar-view-month.map.js
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.28 |
proxy
|
phpinfo
|
Settings