diff --git a/aleksis/core/frontend/components/availability_event/AvailabilityEventList.vue b/aleksis/core/frontend/components/availability_event/AvailabilityEventList.vue index e36f416b72e6fb6fa3bc43c2e989847c2e529f0f..3ff485aed083a8bb7d1fe6a26bfcb9bafba5d459 100644 --- a/aleksis/core/frontend/components/availability_event/AvailabilityEventList.vue +++ b/aleksis/core/frontend/components/availability_event/AvailabilityEventList.vue @@ -166,13 +166,16 @@ export default { rRuleToText(rfcString) { if (rfcString) { const rRule = RRule.fromString(rfcString); - return `${ - this.rruleFrequencies.find((r) => r.freq === rRule.options.interval) - .text - }, ${this.$t("availability_events.recurrences.until")} ${this.$d( - rRule.options.until, - "short", - )}`; + let recurrence = this.rruleFrequencies.find( + (r) => r.freq === rRule.options.interval, + ).text; + if (rRule.options.until) { + recurrence += `, ${this.$t("availability_events.recurrences.until")} ${this.$d( + rRule.options.until, + "short", + )}`; + } + return recurrence; } return this.$t("availability_events.recurrences.none"); },