Skip to content
Snippets Groups Projects

Draft: Resolve "Include class register in calendar dialog"

Open Julian requested to merge 269-include-class-register-in-calendar-dialog into master
4 files
+ 181
1
Compare changes
  • Side-by-side
  • Inline
Files
4
 
<script>
 
import lessonEventAdditionalCalendarActionMixin from "aleksis.apps.chronos/components/calendar_feeds/mixins/lessonEventAdditionalCalendarActionMixin.js";
 
import { documentationsForLessonEvents } from "./documentations.graphql";
 
import MobileFullscreenDialog from "aleksis.core/components/generic/dialogs/MobileFullscreenDialog.vue";
 
import Documentation from "../../coursebook/documentation/Documentation.vue";
 
import SecondaryActionButton from "aleksis.core/components/generic/buttons/SecondaryActionButton.vue";
 
 
export default {
 
name: "DocumentationForLessonEvent",
 
components: { Documentation, MobileFullscreenDialog, SecondaryActionButton },
 
mixins: [lessonEventAdditionalCalendarActionMixin],
 
apollo: {
 
documentations: {
 
query: documentationsForLessonEvents,
 
skip() {
 
return this.dialogOpen;
 
},
 
variables() {
 
return {
 
lessonEvents: [this.lesson.meta.id],
 
start: this.lesson.start,
 
end: this.lesson.end,
 
};
 
},
 
update: (data) => data.items,
 
},
 
},
 
data() {
 
return {
 
dialogOpen: false,
 
dirty: false,
 
documentations: [],
 
extraMarks: [],
 
absenceReasons: [],
 
subjects: [],
 
};
 
},
 
};
 
</script>
 
 
<template>
 
<mobile-fullscreen-dialog
 
v-model="dialogOpen"
 
max-width="500px"
 
:persistent="dirty"
 
>
 
<template #activator="{ on, attrs }">
 
<secondary-action-button
 
v-bind="attrs"
 
v-on="on"
 
icon-text="mdi-book-education-outline"
 
i18n-key="alsijil.coursebook.lesson_event_button"
 
/>
 
</template>
 
<div />
 
<!-- dialog view -> deactivate dialog -->
 
<!-- cancel | save (through lesson-summary) -->
 
<documentation
 
v-for="documentation in documentations"
 
:key="documentation.id"
 
:affected-query="$apollo.queries.documentations"
 
:documentation="documentation"
 
:extra-marks="extraMarks"
 
:absence-reasons="absenceReasons"
 
:subjects="subjects"
 
@close="dialogOpen = false"
 
@dirty="dirty = $event"
 
/>
 
</mobile-fullscreen-dialog>
 
</template>
Loading