diff --git a/aleksis/apps/alsijil/assets/components/coursebook/LessonDocumentations.vue b/aleksis/apps/alsijil/assets/components/coursebook/LessonDocumentations.vue index f95152c66ac88c2985cda9b835037ba41ac2ab33..4524f020d9ba6c1c7d20c9ef09f4899eb04083fe 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"),