Skip to content

Commit 8244088

Browse files
refactor(calendar): re-simplify timestamp handling for events
1 parent 20bd913 commit 8244088

File tree

1 file changed

+11
-13
lines changed

1 file changed

+11
-13
lines changed

modules/default/calendar/calendar.js

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -248,8 +248,8 @@ Module.register("calendar", {
248248
let lastSeenDate = "";
249249

250250
events.forEach((event, index) => {
251-
const eventStartDateMoment = this.timestampToMoment(event.startDate, event.fullDayEvent, event.floatingStartDate);
252-
const eventEndDateMoment = this.timestampToMoment(event.endDate, event.fullDayEvent, event.floatingEndDate);
251+
const eventStartDateMoment = this.timestampToMoment(event.startDate);
252+
const eventEndDateMoment = this.timestampToMoment(event.endDate);
253253
const dateAsString = eventStartDateMoment.format(this.config.dateFormat);
254254
if (this.config.timeFormat === "dateheaders") {
255255
if (lastSeenDate !== dateAsString) {
@@ -616,8 +616,8 @@ Module.register("calendar", {
616616
let by_url_calevents = [];
617617
for (const e in calendar) {
618618
const event = JSON.parse(JSON.stringify(calendar[e])); // clone object
619-
const eventStartDateMoment = this.timestampToMoment(event.startDate, event.fullDayEvent, event.floatingStartDate);
620-
const eventEndDateMoment = this.timestampToMoment(event.endDate, event.fullDayEvent, event.floatingEndDate);
619+
const eventStartDateMoment = this.timestampToMoment(event.startDate);
620+
const eventEndDateMoment = this.timestampToMoment(event.endDate);
621621

622622
if (this.config.hidePrivate && event.class === "PRIVATE") {
623623
// do not add the current event, skip it
@@ -658,26 +658,24 @@ Module.register("calendar", {
658658
let count = 1;
659659
while (eventEndDateMoment.isAfter(midnight)) {
660660
const thisEvent = JSON.parse(JSON.stringify(event)); // clone object
661-
thisEvent.today = this.timestampToMoment(thisEvent.startDate, thisEvent.fullDayEvent, thisEvent.floatingStartDate).isSame(now, "d");
662-
thisEvent.tomorrow = this.timestampToMoment(thisEvent.startDate, thisEvent.fullDayEvent, thisEvent.floatingStartDate).isSame(now.clone().add(1, "days"), "d");
661+
thisEvent.today = this.timestampToMoment(thisEvent.startDate).isSame(now, "d");
662+
thisEvent.tomorrow = this.timestampToMoment(thisEvent.startDate).isSame(now.clone().add(1, "days"), "d");
663663
thisEvent.endDate = midnight.clone().subtract(1, "day").format("x");
664-
thisEvent.floatingEndDate = midnight.clone().subtract(1, "day").format("YYYY-MM-DD");
665664
thisEvent.title += ` (${count}/${maxCount})`;
666665
splitEvents.push(thisEvent);
667666

668667
event.startDate = midnight.format("x");
669-
event.floatingStartDate = midnight.clone().format("YYYY-MM-DD");
670668
count += 1;
671669
midnight = midnight.clone().add(1, "day").endOf("day"); // next day
672670
}
673671
// Last day
674672
event.title += ` (${count}/${maxCount})`;
675-
event.today += this.timestampToMoment(event.startDate, event.fullDayEvent, event.floatingStartDate).isSame(now, "d");
676-
event.tomorrow = this.timestampToMoment(event.startDate, event.fullDayEvent, event.floatingStartDate).isSame(now.clone().add(1, "days"), "d");
673+
event.today += this.timestampToMoment(event.startDate).isSame(now, "d");
674+
event.tomorrow = this.timestampToMoment(event.startDate).isSame(now.clone().add(1, "days"), "d");
677675
splitEvents.push(event);
678676

679677
for (let splitEvent of splitEvents) {
680-
if (this.timestampToMoment(splitEvent.endDate, splitEvent.fullDayEvent, splitEvent.floatingEndDate).isAfter(now) && this.timestampToMoment(splitEvent.endDate, splitEvent.fullDayEvent, splitEvent.floatingEndDate).isSameOrBefore(future)) {
678+
if (this.timestampToMoment(splitEvent.endDate).isAfter(now) && this.timestampToMoment(splitEvent.endDate).isSameOrBefore(future)) {
681679
by_url_calevents.push(splitEvent);
682680
}
683681
}
@@ -713,7 +711,7 @@ Module.register("calendar", {
713711
if (this.config.limitDays > 0 && events.length > 0) { // watch out for initial display before events arrive from helper
714712
// Group all events by date, events on the same date will be in a list with the key being the date.
715713
const eventsByDate
716-
= Object.groupBy(events, (ev) => this.timestampToMoment(ev.startDate, ev.fullDayEvent, ev.floatingStartDate).format("YYYY-MM-DD"));
714+
= Object.groupBy(events, (ev) => this.timestampToMoment(ev.startDate).format("YYYY-MM-DD"));
717715
const newEvents = [];
718716
let currentDate = moment();
719717
let daysCollected = 0;
@@ -723,7 +721,7 @@ Module.register("calendar", {
723721
// Check if there are events on the currentDate
724722
if (eventsByDate[dateStr] && eventsByDate[dateStr].length > 0) {
725723
// If there are any events today then get all those events and select the currently active events and the events that are starting later in the day.
726-
newEvents.push(...eventsByDate[dateStr].filter((ev) => this.timestampToMoment(ev.endDate, ev.fullDayEvent, ev.floatingEndDate).isAfter(moment())));
724+
newEvents.push(...eventsByDate[dateStr].filter((ev) => this.timestampToMoment(ev.endDate).isAfter(moment())));
727725
// Since we found a day with events, increase the daysCollected by 1
728726
daysCollected++;
729727
}

0 commit comments

Comments
 (0)