Skip to content
Snippets Groups Projects
DocumentationModal.vue 1.35 KiB
Newer Older
<!-- Wrapper around Documentation.vue -->
<!-- That uses it either as list item or as editable modal dialog. -->
<template>
  <mobile-fullscreen-dialog v-model="popup" max-width="500px">
    <template #activator="activator">
      <!-- list view -> activate dialog -->
Julian's avatar
Julian committed
      <documentation
        compact
        v-bind="$attrs"
        :dialog-activator="activator"
        :extra-marks="extraMarks"
        :absence-reasons="absenceReasons"
        :subjects="subjects"
Julian's avatar
Julian committed
      />
    </template>
    <!-- dialog view -> deactivate dialog -->
    <!-- cancel | save (through lesson-summary) -->
Jonathan Weth's avatar
Jonathan Weth committed
    <documentation
      v-bind="$attrs"
      :extra-marks="extraMarks"
      :absence-reasons="absenceReasons"
      :subjects="subjects"
Jonathan Weth's avatar
Jonathan Weth committed
      @close="popup = false"
    />
  </mobile-fullscreen-dialog>
</template>

<script>
Julian's avatar
Julian committed
import MobileFullscreenDialog from "aleksis.core/components/generic/dialogs/MobileFullscreenDialog.vue";
import Documentation from "./Documentation.vue";

export default {
  name: "DocumentationModal",
  components: {
    MobileFullscreenDialog,
    Documentation,
  },
  data() {
    return {
      popup: false,
    };
  },
  props: {
    extraMarks: {
      type: Array,
      required: true,
    },
    absenceReasons: {
      type: Array,
      required: true,
    },
    subjects: {
      type: Array,
      required: true,
    },