diff --git a/public/js/components/Calendar/Base/Grid.js b/public/js/components/Calendar/Base/Grid.js index 56465c0f3..572068f8e 100644 --- a/public/js/components/Calendar/Base/Grid.js +++ b/public/js/components/Calendar/Base/Grid.js @@ -1,11 +1,13 @@ import GridLine from './Grid/Line.js'; +import GridLineEvent from './Grid/Line/Event.js'; import CalDnd from '../../../directives/Calendar/DragAndDrop.js'; export default { name: "CalendarGrid", components: { - GridLine + GridLine, + GridLineEvent }, directives: { CalDnd @@ -128,6 +130,16 @@ export default { return [...this.axisMain, lastInMainAxis.plus(extraLength)]; }, + eventsAllDay() { + if (!this.allDayEvents) + return []; + return this.mapIntoMainAxis(this.originalEvents.filter(event => event.orig.allDayEvent)); + }, + eventsNormal() { + if (!this.allDayEvents) + return this.events; + return this.mapIntoMainAxis(this.originalEvents.filter(event => !event.orig.allDayEvent)); + }, events() { return this.mapIntoMainAxis(this.originalEvents); }, @@ -165,13 +177,12 @@ export default { gridlines[ts].push('pe_' + part.index); }); - this.events.forEach((events, mainIndex) => { + this.eventsNormal.forEach((events, mainIndex) => { let day = this.axisMain[mainIndex]; events.forEach(event => { if (!event.startsHere && !event.endsHere) return; - if (this.allDayEvents && event.orig.allDayEvent) - return; + if (event.startsHere) { let ts = event.start.diff(day).toMillis(); if (!gridlines[ts]) @@ -185,7 +196,7 @@ export default { }); }); - return '[allday] auto ' + Object.keys(gridlines).sort((a,b) => parseInt(a)-parseInt(b)).map((start, i, keys) => { + return Object.keys(gridlines).sort((a,b) => parseInt(a)-parseInt(b)).map((start, i, keys) => { let end = keys[i + 1]; if (!end) { gridlines[start].push('end'); @@ -250,7 +261,7 @@ export default {
+
+
+ + + +
+