From 4ed996047744381c2b35b541574c60e9dae60674 Mon Sep 17 00:00:00 2001
From: Michael Bauer <michael-bauer@posteo.de>
Date: Mon, 4 Nov 2024 12:24:05 +0100
Subject: [PATCH] Introduce a coursebook-print-dialog

---
 .../coursebook/CoursebookControls.vue         |  7 ++--
 .../coursebook/CoursebookPrintDialog.vue      | 33 +++++++++++++++++++
 2 files changed, 35 insertions(+), 5 deletions(-)
 create mode 100644 aleksis/apps/alsijil/frontend/components/coursebook/CoursebookPrintDialog.vue

diff --git a/aleksis/apps/alsijil/frontend/components/coursebook/CoursebookControls.vue b/aleksis/apps/alsijil/frontend/components/coursebook/CoursebookControls.vue
index e62b17f54..2119667bd 100644
--- a/aleksis/apps/alsijil/frontend/components/coursebook/CoursebookControls.vue
+++ b/aleksis/apps/alsijil/frontend/components/coursebook/CoursebookControls.vue
@@ -1,5 +1,5 @@
 <script setup>
-import SecondaryActionButton from "aleksis.core/components/generic/buttons/SecondaryActionButton.vue";
+import CoursebookPrintDialog from "./CoursebookPrintDialog.vue";
 </script>
 
 <template>
@@ -69,11 +69,8 @@ import SecondaryActionButton from "aleksis.core/components/generic/buttons/Secon
       >
         {{ pageTypeButtonText }}
       </v-btn>
-      <secondary-action-button
+      <coursebook-print-dialog
         v-if="pageType === 'documentations'"
-        i18n-key="alsijil.coursebook.print"
-        icon-text="$print"
-        :click="showPrintMenu"
       />
     </div>
   </div>
diff --git a/aleksis/apps/alsijil/frontend/components/coursebook/CoursebookPrintDialog.vue b/aleksis/apps/alsijil/frontend/components/coursebook/CoursebookPrintDialog.vue
new file mode 100644
index 000000000..2d111617a
--- /dev/null
+++ b/aleksis/apps/alsijil/frontend/components/coursebook/CoursebookPrintDialog.vue
@@ -0,0 +1,33 @@
+<script setup>
+import MobileFullscreenDialog from "aleksis.core/components/generic/dialogs/MobileFullscreenDialog.vue";
+import SecondaryActionButton from "aleksis.core/components/generic/buttons/SecondaryActionButton.vue";
+</script>
+
+<template>
+  <mobile-fullscreen-dialog
+    v-model="dialog"
+  >
+    <template #activator>
+      <secondary-action-button
+        i18n-key="alsijil.coursebook.print"
+        icon-text="$print"
+        @click="dialog=true"
+        :disabled="dialog"
+      />
+    </template>
+  </mobile-fullscreen-dialog>
+</template>
+
+<script>
+/**
+ * This component provides a dialog for configuring the coursebook-printout
+ */
+export default {
+  name: "CoursebookPrintDialog",
+  data() {
+    return {
+      dialog: false,
+    };
+  },
+};
+</script>
-- 
GitLab