From a77056f61db8de69f8f57fdddaf77b34c78bb0f3 Mon Sep 17 00:00:00 2001 From: Jonathan Weth <git@jonathanweth.de> Date: Sat, 7 Dec 2024 13:53:10 +0100 Subject: [PATCH] Add validation to coursebook print dialog --- .../frontend/components/coursebook/Coursebook.vue | 4 +--- .../components/coursebook/CoursebookPrintDialog.vue | 12 +++++++++++- aleksis/apps/alsijil/frontend/messages/de.json | 4 ++-- aleksis/apps/alsijil/frontend/messages/en.json | 4 ++-- 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/aleksis/apps/alsijil/frontend/components/coursebook/Coursebook.vue b/aleksis/apps/alsijil/frontend/components/coursebook/Coursebook.vue index a9080da16..008014734 100644 --- a/aleksis/apps/alsijil/frontend/components/coursebook/Coursebook.vue +++ b/aleksis/apps/alsijil/frontend/components/coursebook/Coursebook.vue @@ -69,9 +69,7 @@ <DocumentationLoader /> </template> </infinite-scrolling-date-sorted-c-r-u-d-iterator> - <absence-creation-dialog - :absence-reasons="absenceReasons" - /> + <absence-creation-dialog :absence-reasons="absenceReasons" /> </div> </template> diff --git a/aleksis/apps/alsijil/frontend/components/coursebook/CoursebookPrintDialog.vue b/aleksis/apps/alsijil/frontend/components/coursebook/CoursebookPrintDialog.vue index 8f048056c..9b121aa01 100644 --- a/aleksis/apps/alsijil/frontend/components/coursebook/CoursebookPrintDialog.vue +++ b/aleksis/apps/alsijil/frontend/components/coursebook/CoursebookPrintDialog.vue @@ -68,6 +68,7 @@ import CancelButton from "aleksis.core/components/generic/buttons/CancelButton.v <primary-action-button i18n-key="alsijil.coursebook.print.button" icon-text="$print" + :disabled="!valid" @click="print" /> </template> @@ -94,7 +95,7 @@ export default { value: { type: Array, required: false, - default: [], + default: () => [], }, /** * Loading state @@ -126,6 +127,15 @@ export default { return this.currentGroupSelection; } }, + valid() { + return ( + this.currentGroupSelection.length > 0 && + (this.includeMembersTable || + this.includeTeachersAndSubjectsTable || + this.includePersonOverviews || + this.includeCoursebook) + ); + }, }, methods: { setGroupSelection(groups) { diff --git a/aleksis/apps/alsijil/frontend/messages/de.json b/aleksis/apps/alsijil/frontend/messages/de.json index 3a34a352a..872b2e075 100644 --- a/aleksis/apps/alsijil/frontend/messages/de.json +++ b/aleksis/apps/alsijil/frontend/messages/de.json @@ -103,8 +103,8 @@ "print": { "button": "Drucken", "title": "Kursbuchausdruck", - "groups": "Drucke Gruppen:", - "include": "Drucke Abschnitte:", + "groups": "Gruppen", + "include": "Abschnitte", "include_cover": "Deckblatt", "include_abbreviations": "Abkürzungen", "include_members_table": "Tabelle aller Gruppenmitglieder mit Statistiken", diff --git a/aleksis/apps/alsijil/frontend/messages/en.json b/aleksis/apps/alsijil/frontend/messages/en.json index 4b273e3a7..2294349f2 100644 --- a/aleksis/apps/alsijil/frontend/messages/en.json +++ b/aleksis/apps/alsijil/frontend/messages/en.json @@ -133,8 +133,8 @@ "print": { "button": "Print", "title": "Print Coursebook", - "groups": "Groups to print:", - "include": "Parts to print:", + "groups": "Groups", + "include": "Parts to include", "include_cover": "Cover", "include_abbreviations": "Abbreviations", "include_members_table": "Members Table", -- GitLab