diff --git a/aleksis/apps/alsijil/frontend/components/coursebook/Coursebook.vue b/aleksis/apps/alsijil/frontend/components/coursebook/Coursebook.vue index f5171d10a4a5a5333dd72d1226090afe890aa1fb..4bcdb82f95a0aacbab432c318c69bd885d6a8e13 100644 --- a/aleksis/apps/alsijil/frontend/components/coursebook/Coursebook.vue +++ b/aleksis/apps/alsijil/frontend/components/coursebook/Coursebook.vue @@ -231,7 +231,7 @@ export default { }, groupDocsByDay(docs) { // => {dt: [dt doc ...] ...} - this.docsByDay = docs.reduce((byDay, doc) => { + const docsByDay = docs.reduce((byDay, doc) => { // This works with dummy. Does actual doc have dateStart instead? const day = DateTime.fromISO(doc.datetimeStart).startOf("day"); byDay[day] ??= [day]; @@ -239,9 +239,9 @@ export default { return byDay; }, {}); // => [[dt doc ...] ...] - return Object.keys(this.docsByDay) + return Object.keys(docsByDay) .sort() - .map((key) => this.docsByDay[key]); + .map((key) => docsByDay[key]); // sorting is necessary since backend can send docs unordered }, debounce(fn, delay) { @@ -348,9 +348,10 @@ export default { if (!this.knownDates[date]) { console.log(this.lastQuery); console.log('unknown date', date.toISODate()); + console.log(this.knownDates); // find missing & fetch missing range const missing = this.dateRange(date) - .filter((ts) => !this.docsByDay[ts]); + .filter((ts) => !this.knownDates[ts]); // ask for first to last this.lastQuery.fetchMore({ variables: {