From 4e59fa1c6c2555aa914ff244e133d6f0a9e9c075 Mon Sep 17 00:00:00 2001 From: Julian Leucker <leuckerj@gmail.com> Date: Tue, 21 May 2024 11:09:42 +0200 Subject: [PATCH] Create PersonalNotes component and mixin --- .../absences/ManageStudentsDialog.vue | 9 ++++++++ .../personal_notes/PersonalNotes.vue | 21 +++++++++++++++++++ .../personalNoteRelatedMixin.js | 19 +++++++++++++++++ 3 files changed, 49 insertions(+) create mode 100644 aleksis/apps/alsijil/frontend/components/coursebook/personal_notes/PersonalNotes.vue create mode 100644 aleksis/apps/alsijil/frontend/components/coursebook/personal_notes/personalNoteRelatedMixin.js diff --git a/aleksis/apps/alsijil/frontend/components/coursebook/absences/ManageStudentsDialog.vue b/aleksis/apps/alsijil/frontend/components/coursebook/absences/ManageStudentsDialog.vue index 824f3da29..f0e8a1959 100644 --- a/aleksis/apps/alsijil/frontend/components/coursebook/absences/ManageStudentsDialog.vue +++ b/aleksis/apps/alsijil/frontend/components/coursebook/absences/ManageStudentsDialog.vue @@ -8,11 +8,13 @@ import documentationPartMixin from "../documentation/documentationPartMixin"; import LessonInformation from "../documentation/LessonInformation.vue"; import { updateParticipationStatuses } from "./participationStatus.graphql"; import SlideIterator from "aleksis.core/components/generic/SlideIterator.vue"; +import PersonalNotes from "../personal_notes/PersonalNotes.vue"; export default { name: "ManageStudentsDialog", extends: MobileFullscreenDialog, components: { + PersonalNotes, AbsenceReasonChip, AbsenceReasonGroupSelect, CancelButton, @@ -170,6 +172,13 @@ export default { @input="sendToServer(item, 'absenceReason', $event)" /> </v-card-text> + <v-divider inset /> + <v-card-text> + <personal-notes + v-bind="documentationPartProps" + :participation="item" + /> + </v-card-text> </template> </slide-iterator> </template> diff --git a/aleksis/apps/alsijil/frontend/components/coursebook/personal_notes/PersonalNotes.vue b/aleksis/apps/alsijil/frontend/components/coursebook/personal_notes/PersonalNotes.vue new file mode 100644 index 000000000..c74dc4d6b --- /dev/null +++ b/aleksis/apps/alsijil/frontend/components/coursebook/personal_notes/PersonalNotes.vue @@ -0,0 +1,21 @@ +<script setup> +import SecondaryActionButton from "aleksis.core/components/generic/buttons/SecondaryActionButton.vue"; +import ExtraMarksNote from "./ExtraMarksNote.vue"; +import NoteNote from "./NoteNote.vue"; +</script> +<script> +import personalNoteRelatedMixin from "./personalNoteRelatedMixin"; + +export default { + name: "PersonalNotes", + mixins: [personalNoteRelatedMixin], +}; +</script> + +<template> + <div> + + </div> +</template> + +<style scoped></style> diff --git a/aleksis/apps/alsijil/frontend/components/coursebook/personal_notes/personalNoteRelatedMixin.js b/aleksis/apps/alsijil/frontend/components/coursebook/personal_notes/personalNoteRelatedMixin.js new file mode 100644 index 000000000..0eda6c4ca --- /dev/null +++ b/aleksis/apps/alsijil/frontend/components/coursebook/personal_notes/personalNoteRelatedMixin.js @@ -0,0 +1,19 @@ +import documentationPartMixin from "../documentation/documentationPartMixin"; + +export default { + mixins: [documentationPartMixin], + props: { + participation: { + type: Object, + required: true, + }, + }, + computed: { + personalNoteRelatedProps() { + return { + ...this.documentationPartProps, + participation: this.participation, + }; + }, + }, +}; -- GitLab