Your IP : 3.135.213.119
(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.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=this.calendar.getViewRangeDate(),i=false;if(e&&e.getTime){i=new Date(e.getTime());i.setDate(1);i.setHours(0,0,0,0)}return i};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,a,i=e.grid||this.grid,n=this.calendar.getViewRangeDate(),s=n.getFullYear(),r=n.getMonth(),l=this.util.getViewHeight(),o=BX.clone(this.getViewRange(),true),d=new Date;BX.cleanNode(i);d.setFullYear(s,r,1);this.dayIndex={};this.days=[];this.entryHolders=[];this.currentMonthRow=false;this.monthRows=[];if(this.util.getWeekStart()!=this.util.getWeekDayByInd(d.getDay())){a=this.util.getWeekDayOffset(this.util.getWeekDayByInd(d.getDay()));d.setDate(d.getDate()-a);o.start=new Date(d.getTime());o.start.setHours(0,0,0,0);for(t=0;t<a;t++){this.buildDayCell({date:d,month:"previous",grid:i});d.setDate(d.getDate()+1)}}d.setFullYear(s,r,1);while(d.getMonth()==r){this.buildDayCell({date:d,grid:i});d.setDate(d.getDate()+1)}if(this.util.getWeekStart()!=this.util.getWeekDayByInd(d.getDay())){a=this.util.getWeekDayOffset(this.util.getWeekDayByInd(d.getDay()));d.setFullYear(s,r+1,1);for(t=a;t<7;t++){this.buildDayCell({date:d,month:"next",grid:i});d.setDate(d.getDate()+1)}o.end=new Date(d.getTime());o.end.setHours(23,59,59,59)}this.calendar.setDisplayedViewRange(o);if(this.monthRows.length>0){this.rowHeight=Math.round(l/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=this.util.getWeekDayByInd(n),l=false,o=this.util.getWeekStart()==r;if(o){this.currentMonthRow=e.grid.appendChild(BX.create("DIV",{props:{className:"calendar-grid-month-row"}}));this.monthRows.push(this.currentMonthRow);if(this.util.showWeekNumber()){l=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>"+(l?'<span class="calendar-num-week" data-bx-cal-time="'+i+'" data-bx-calendar-weeknumber="'+l+'">'+l+"</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,l,o,d,h=[],p,c,g=this.calendar.getDisplayedViewRange();if(!e)e={};if(e.reloadEntries!==false){this.entries=this.entryController.getList({startDate:new Date(g.start.getFullYear(),g.start.getMonth(),1),finishDate:new Date(g.end.getFullYear(),g.end.getMonth()+1,1),viewRange:g,finishCallback:BX.proxy(this.displayEntries,this)})}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(a=0;a<this.entries.length;a++){n=this.entries[a];this.entriesIndex[n.uid]=a;n.cleanParts();d=false;for(r=this.dayIndex[n.startDayCode];r<this.days.length;r++){o=this.days[r];if(o.dayCode==n.startDayCode||d&&o.dayOffset==0){d=true;s=n.startPart({from:o,daysCount:0});o.entries.started.push({entry:n,part:s})}if(d){o.entries.list.push({entry:n,part:s});s.daysCount++;s.to=o;if(o.dayCode==n.endDayCode||o.dayOffset==this.dayCount-1){h.push({part:s,entry:n});if(o.dayCode==n.endDayCode){break}}}}}for(a=0;a<h.length;a++){this.displayEntryPiece(h[a])}for(r=0;r<this.days.length;r++){o=this.days[r];if(o.entries.started.length>0){if(o.entries.started.length>0)o.entries.started.sort(this.calendar.entryController.sort);for(a=0;a<o.entries.started.length;a++){element=o.entries.started[a];if(element){n=element.entry;l=element.part;p=false;for(i=0;i<this.slotsCount;i++){if(o.slots[i]!==false){this.occupySlot({slotIndex:i,startIndex:r,endIndex:r+l.daysCount});p=true;n.getWrap(l.partIndex).style.top=i*this.slotHeight+"px";break}}if(!p){t=o.entries.started[a-1];if(t){o.entries.hidden.push(t);t.entry.getWrap(t.part.partIndex).style.display="none"}o.entries.hidden.push(element);n.getWrap(l.partIndex).style.display="none"}}}}if(o.entries.list.length>0){c=false;for(a=0;a<o.entries.list.length;a++){if(o.entries.list[a].part.params.wrapNode.style.display=="none"){c=true;break}}if(c){o.hiddenStorage=this.entryHolders[o.holderIndex].appendChild(BX.create("DIV",{props:{className:"calendar-event-line-wrap calendar-event-more-btn-container"},attrs:{"data-bx-calendar-show-all-events":o.dayCode},style:{top:this.rowHeight-42+"px",left:"calc((100% / "+this.dayCount+") * ("+(o.dayOffset+1)+" - 1) + 2px)",width:"calc(100% / "+this.dayCount+" - 3px)"}}));o.hiddenStorageText=o.hiddenStorage.appendChild(BX.create("span",{props:{className:"calendar-event-more-btn"}}));o.hiddenStorage.style.display="block";o.hiddenStorageText.innerHTML=BX.message("EC_SHOW_ALL")+" "+o.entries.list.length}else if(o.hiddenStorage){o.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,l,o,d,h,p,c="calendar-event-line-wrap",g=0,y,u,f=e.holder||this.entryHolders[i.holderIndex];if(f){if(a.isFullDay()){c+=" calendar-event-line-fill"}else if(a.isLongWithTime()){c+=" calendar-event-line-border"}if(a.isExternal()){c+=" calendar-event-line-intranet"}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";u=this.getArrow("right",a.color,a.isFullDay());g+=12}if(y&&!u){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(u){s.appendChild(u)}p=s.appendChild(BX.create("DIV",{props:{className:"calendar-event-line-inner-container"}}));l=p.appendChild(BX.create("DIV",{props:{className:"calendar-event-line-inner"}}));r=l.appendChild(BX.create("DIV",{props:{className:"calendar-event-line-dot"}}));if(a.isFullDay()){l.style.maxWidth="calc(200% / "+n+" - 3px)"}else if(a.isLongWithTime()){s.style.borderColor=a.color;l.style.maxWidth="calc(200% / "+n+" - 3px)";if(e.part.partIndex==0){d=l.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-time"},text:this.calendar.util.formatTime(a.from.getHours(),a.from.getMinutes())}));l.style.width="calc(100% / "+n+" - 3px)"}if(e.part.partIndex==a.parts.length-1){if(n>1&&a.parts.length>1){l.style.width="calc("+(n-1)+"00% / "+n+" - 3px)"}if(!e.popupMode){h=l.appendChild(BX.create("SPAN",{props:{className:a.parts.length>1&&n==1?"calendar-event-line-time":"calendar-event-line-expired-time"},text:this.calendar.util.formatTime(a.to.getHours(),a.to.getMinutes())}))}}}else{d=l.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-time"},text:this.calendar.util.formatTime(a.from.getHours(),a.from.getMinutes())}))}o=l.appendChild(BX.create("SPAN",{props:{className:"calendar-event-line-text"},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}f.appendChild(s);if(a.opacity!==undefined){s.style.opacity=a.opacity}t={wrapNode:s,nameNode:o,innerContainer:p,innerNode:l,timeNode:d||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,l,o,d,h,p=[],c=5,g=0;for(l=0;l<c;l++)p[l]=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++){o=r[s];if(!o)continue;if(!this.arEvents[o.oEvent.ind]){i.arEvents.begining=r=BX.util.deleteFromArray(r,s);o=r[s];if(!o)continue}for(l=0;l<this.maxEventCount;l++){if(p[l]-g<=0){p[l]=g+o.daysCount;this.ShowEventOnLevel(o.oEvent.oParts[o.partInd],l,e);continue e}}h[o.oEvent.ID]=true;i.arEvents.hidden.push(o)}}d=i.arEvents.all;for(var y=0;y<d.length;y++){o=d[y];if(!o||h[o.oEvent.ID]){continue}if(!this.arEvents[o.oEvent.ind]){i.arEvents.all=d=BX.util.deleteFromArray(d,y);o=d[y];if(!o){continue}}if(o.oEvent.oParts&&o.partInd!=undefined&&o.oEvent.oParts[o.partInd]&&o.oEvent.oParts[o.partInd].style.display=="none"){i.arEvents.hidden.push(o)}}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.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",l=0,o=e.dayFrom,d=1,h=this.entryHolders[o.holderIndex],p=this.calendar.sectionController.getCurrentSection(),c=p.color;t=this.entryController.getTimeForNewEntry(o.date);a=this.entryController.getDefaultEntryName();i=BX.create("DIV",{props:{className:r},style:{opacity:0,top:0,left:"calc((100% / "+this.dayCount+") * ("+(o.dayOffset+1)+" - 1) + 2px)",width:"calc("+d+" * 100% / "+this.dayCount+" - "+l+"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=c;i.style.borderColor=c;h.appendChild(i);var g=BX.pos(i);var y=BX.adjust(document.body.appendChild(i.cloneNode(true)),{props:{className:"calendar-event-line-clone"},style:{width:g.width-6+"px",height:g.height+"px",top:g.top+"px",left:g.left+1+"px"}});BX.addClass(h,"shifted");h.style.height=(this.slotsCount-1)*this.slotHeight+"px";setTimeout(function(){y.style.opacity="1"},100);setTimeout(BX.delegate(function(){this.showSimplePopup({entryTime:t,entryName:a,nameNode:y.querySelector(".calendar-event-line-text"),timeNode:y.querySelector(".calendar-event-line-time"),entryNode:y,section:p,closeCallback:function(){BX.cleanNode(y,true);BX.cleanNode(i,true);BX.removeClass(h,"shifted");h.style.height="1px"},changeDateCallback:BX.delegate(function(e){var t=this.util.getDayCode(e);if(t&&this.dayIndex[t]!==undefined&&this.days[this.dayIndex[t]]){var a=this.days[this.dayIndex[t]];i.style.left="calc((100% / "+this.dayCount+") * ("+(a.dayOffset+1)+" - 1) + 2px)";this.entryHolders[a.holderIndex].appendChild(i);var n=BX.pos(i);BX.adjust(y,{style:{width:n.width+1+"px",height:n.height+"px",top:n.top+"px",left:n.left+"px"}})}},this),saveCallback:function(){},changeSectionCallback:function(e){var t=e.color;if(y){y.style.background=t;y.style.borderColor=t}},fullFormCallback:BX.delegate(this.showEditSlider,this)})},this),200)};if(e.BXEventCalendar){e.BXEventCalendar.CalendarMonthView=a}else{BX.addCustomEvent(e,"onBXEventCalendarInit",function(){e.BXEventCalendar.CalendarMonthView=a})}})(window);