From 06db77e510eef9010191e35e9a414833e9122fd4 Mon Sep 17 00:00:00 2001 From: magicfelix <felix@felix-zauberer.de> Date: Mon, 8 Aug 2022 15:11:35 +0200 Subject: [PATCH] List one LessonDocumentation per week if enabled --- .../coursebook/LessonDocumentations.vue | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/aleksis/apps/alsijil/assets/components/coursebook/LessonDocumentations.vue b/aleksis/apps/alsijil/assets/components/coursebook/LessonDocumentations.vue index f95152c66..4524f020d 100644 --- a/aleksis/apps/alsijil/assets/components/coursebook/LessonDocumentations.vue +++ b/aleksis/apps/alsijil/assets/components/coursebook/LessonDocumentations.vue @@ -36,7 +36,7 @@ </v-dialog> <v-data-table :headers="headers" - :items="lessonDocumentations" + :items="computedLessonDocumentations" @click:row="editLessonDocumentation" class="elevation-1" > @@ -71,6 +71,7 @@ ], lessonDocumentationEdit: {}, selectedLessonperiodDatetime: {}, + recordedWeeks: [], } }, computed: { @@ -78,8 +79,20 @@ let currentDatetime = new Date() return this.plannedLessonperiodsDatetimes.filter(lp => new Date(lp.datetimeStart) > currentDatetime) }, + computedLessonDocumentations() { + return this.lessonDocumentations.filter(ld => this.recordDocumentation(ld)) + }, }, methods: { + recordDocumentation(item) { + if (this.documentLessonTopicsByWeek === "True") { + if (this.recordedWeeks.includes(item.week)) { + return false + } + this.recordedWeeks.push(item.week) + } + return true + }, async loadLessonDocumentation(item) { const result = await this.$apollo.mutate({ mutation: require("./LessonDocumentation.graphql"), -- GitLab