From f47212f848a28a3cc4c62daf9284667edce20de9 Mon Sep 17 00:00:00 2001 From: Julian Leucker <leuckerj@gmail.com> Date: Sat, 24 Feb 2024 18:58:21 +0100 Subject: [PATCH] Use canEdit in coursebook frontend --- .../frontend/components/coursebook.graphql | 2 ++ .../documentation/LessonInformation.vue | 2 +- .../documentation/LessonSummary.vue | 28 +++++++++++++------ 3 files changed, 23 insertions(+), 9 deletions(-) diff --git a/aleksis/apps/alsijil/frontend/components/coursebook.graphql b/aleksis/apps/alsijil/frontend/components/coursebook.graphql index a8067e79a..5d7adabf4 100644 --- a/aleksis/apps/alsijil/frontend/components/coursebook.graphql +++ b/aleksis/apps/alsijil/frontend/components/coursebook.graphql @@ -52,6 +52,8 @@ query documentationsForCoursebook( datetimeEnd dateStart dateEnd + canEdit + canDelete } } diff --git a/aleksis/apps/alsijil/frontend/components/documentation/LessonInformation.vue b/aleksis/apps/alsijil/frontend/components/documentation/LessonInformation.vue index 7ac73d8e5..c438a5575 100644 --- a/aleksis/apps/alsijil/frontend/components/documentation/LessonInformation.vue +++ b/aleksis/apps/alsijil/frontend/components/documentation/LessonInformation.vue @@ -7,7 +7,7 @@ v-if="documentation.subject" :subject="documentation.subject" class="ms-2" - append-icon="$edit" + :append-icon="documentation.canEdit ? '$edit' : undefined" /> </v-card-text> </template> diff --git a/aleksis/apps/alsijil/frontend/components/documentation/LessonSummary.vue b/aleksis/apps/alsijil/frontend/components/documentation/LessonSummary.vue index 69126f6f1..86c5e39dd 100644 --- a/aleksis/apps/alsijil/frontend/components/documentation/LessonSummary.vue +++ b/aleksis/apps/alsijil/frontend/components/documentation/LessonSummary.vue @@ -16,6 +16,7 @@ @focusout="save" @keydown.enter="saveAndBlur" :loading="loading" + :disabled="!documentation.canEdit" /> <div class="d-flex flex-column align-start"> <v-chip @@ -29,10 +30,7 @@ ? $t("alsijil.coursebook.summary.homework.value", documentation) : $t("alsijil.coursebook.summary.homework.empty") }}</span> - <v-icon right v-if="documentation.homework" - >mdi-book-edit-outline</v-icon - > - <v-icon right v-else>mdi-book-plus-outline</v-icon> + <v-icon right>{{ homeworkIcon }}</v-icon> </v-chip> <v-chip :outlined="!documentation.groupNote" @@ -47,10 +45,7 @@ }) : $t("alsijil.coursebook.summary.group_note.empty") }}</span> - <v-icon right v-if="documentation.groupNote" - >mdi-note-edit-outline</v-icon - > - <v-icon right v-else>mdi-note-plus-outline</v-icon> + <v-icon right>{{ groupNoteIcon }}</v-icon> </v-chip> </div> </div> @@ -62,6 +57,7 @@ :label="$t('alsijil.coursebook.summary.topic')" :value="documentation.topic" @input="topic = $event" + :disabled="!documentation.canEdit" /> <v-textarea filled @@ -70,6 +66,7 @@ :label="$t('alsijil.coursebook.summary.homework.label')" :value="documentation.homework" @input="homework = $event" + :disabled="!documentation.canEdit" /> <v-textarea filled @@ -78,6 +75,7 @@ :label="$t('alsijil.coursebook.summary.group_note.label')" :value="documentation.groupNote" @input="groupNote = $event" + :disabled="!documentation.canEdit" /> </v-card-text> </template> @@ -154,6 +152,20 @@ export default { event.target.blur(); }, }, + computed: { + homeworkIcon() { + if (this.documentation.homework) { + return this.documentation.canEdit ? "mdi-book-edit-outline" : "mdi-book-alert-outline"; + } + return this.documentation.canEdit ? "mdi-book-plus-outline" : "mdi-book-off-outline"; + }, + groupNoteIcon() { + if (this.documentation.groupNote) { + return this.documentation.canEdit ? "mdi-note-edit-outline" : "mdi-note-alert-outline"; + } + return this.documentation.canEdit ? "mdi-note-plus-outline" : "mdi-note-off-outline"; + }, + }, }; </script> -- GitLab