From f3913a906c941bff7f84bf12f7d7743bc634a2e9 Mon Sep 17 00:00:00 2001
From: Julian Krauser
Date: Mon, 19 May 2025 13:26:46 +0200
Subject: [PATCH 01/17] 1.5.3
---
package-lock.json | 4 ++--
package.json | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index c98fe59..e7ecbbb 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "ff-admin",
- "version": "1.5.2",
+ "version": "1.5.3",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "ff-admin",
- "version": "1.5.2",
+ "version": "1.5.3",
"license": "AGPL-3.0-only",
"dependencies": {
"@fullcalendar/core": "^6.1.17",
diff --git a/package.json b/package.json
index c671aac..9914572 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "ff-admin",
- "version": "1.5.2",
+ "version": "1.5.3",
"description": "Feuerwehr/Verein Mitgliederverwaltung UI",
"type": "module",
"scripts": {
From 2ce66da1d1a44b49d1c7fa43e994b77f02bfcc9d Mon Sep 17 00:00:00 2001
From: Julian Krauser
Date: Wed, 21 May 2025 10:32:56 +0200
Subject: [PATCH 02/17] enhance: enable deletion of protocol content
---
src/components/DoubleConfirmClick.vue | 64 +++++++++++++++++++
.../admin/club/protocol/ProtocolAgenda.vue | 17 ++++-
.../admin/club/protocol/ProtocolDecisions.vue | 17 ++++-
.../admin/club/protocol/ProtocolPresence.vue | 14 ++--
.../admin/club/protocol/ProtocolVoting.vue | 21 +++++-
5 files changed, 124 insertions(+), 9 deletions(-)
create mode 100644 src/components/DoubleConfirmClick.vue
diff --git a/src/components/DoubleConfirmClick.vue b/src/components/DoubleConfirmClick.vue
new file mode 100644
index 0000000..0aa42b3
--- /dev/null
+++ b/src/components/DoubleConfirmClick.vue
@@ -0,0 +1,64 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/admin/club/protocol/ProtocolAgenda.vue b/src/views/admin/club/protocol/ProtocolAgenda.vue
index c3ee9da..8e17344 100644
--- a/src/views/admin/club/protocol/ProtocolAgenda.vue
+++ b/src/views/admin/club/protocol/ProtocolAgenda.vue
@@ -31,6 +31,16 @@
:disabled="!can('create', 'club', 'protocol')"
/>
+
+
+
+
+
diff --git a/src/views/admin/club/protocol/ProtocolDecisions.vue b/src/views/admin/club/protocol/ProtocolDecisions.vue
index be8bc61..e63570e 100644
--- a/src/views/admin/club/protocol/ProtocolDecisions.vue
+++ b/src/views/admin/club/protocol/ProtocolDecisions.vue
@@ -31,6 +31,16 @@
:disabled="!can('create', 'club', 'protocol')"
/>
+
+
+
+
+
diff --git a/src/views/admin/club/protocol/ProtocolPresence.vue b/src/views/admin/club/protocol/ProtocolPresence.vue
index 4792116..d3a0862 100644
--- a/src/views/admin/club/protocol/ProtocolPresence.vue
+++ b/src/views/admin/club/protocol/ProtocolPresence.vue
@@ -42,11 +42,15 @@
-
+ light
+ v-slot="{ isSensitive }"
+ @click:submit="removeSelected(member.memberId)"
+ >
+
+
+
@@ -57,10 +61,12 @@ import { defineComponent } from "vue";
import { mapActions, mapState, mapWritableState } from "pinia";
import Spinner from "@/components/Spinner.vue";
import { TrashIcon } from "@heroicons/vue/24/outline";
+import { TrashIcon as TrashIconSolid } from "@heroicons/vue/24/solid";
import { useProtocolPresenceStore } from "@/stores/admin/club/protocol/protocolPresence";
import { useAbilityStore } from "@/stores/ability";
import MemberSearchSelect from "@/components/admin/MemberSearchSelect.vue";
import type { MemberViewModel } from "@/viewmodels/admin/club/member/member.models";
+import DoubleConfirmClick from "@/components/DoubleConfirmClick.vue";
From d11f0d50c60a5d270c00a2f388bf858fda1bb152 Mon Sep 17 00:00:00 2001
From: Julian Krauser
Date: Wed, 21 May 2025 10:33:24 +0200
Subject: [PATCH 03/17] enhance: double confirm deletion for newsletter dates
---
.../admin/club/newsletter/NewsletterDates.vue | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/src/views/admin/club/newsletter/NewsletterDates.vue b/src/views/admin/club/newsletter/NewsletterDates.vue
index 2fdaa1e..66a9baf 100644
--- a/src/views/admin/club/newsletter/NewsletterDates.vue
+++ b/src/views/admin/club/newsletter/NewsletterDates.vue
@@ -37,11 +37,15 @@
})
}}
-
+ light
+ v-slot="{ isSensitive }"
+ @click:submit="removeSelected(item.calendarId)"
+ >
+
+
+
From 516c6a9e92a8984f0996c024d53c5619950b2949 Mon Sep 17 00:00:00 2001
From: Julian Krauser
Date: Sat, 31 May 2025 07:34:19 +0200
Subject: [PATCH 07/17] enhance: add calendar link to login screen
---
src/components/admin/management/setting/AppSetting.vue | 2 +-
src/views/Login.vue | 7 ++++++-
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/src/components/admin/management/setting/AppSetting.vue b/src/components/admin/management/setting/AppSetting.vue
index 787dbe1..4ec3374 100644
--- a/src/components/admin/management/setting/AppSetting.vue
+++ b/src/components/admin/management/setting/AppSetting.vue
@@ -58,7 +58,7 @@ export default defineComponent({
},
{
key: "app.show_link_to_calendar",
- value: formData.show_link_to_calendar.checked || null,
+ value: formData.show_link_to_calendar.checked,
},
]);
},
diff --git a/src/views/Login.vue b/src/views/Login.vue
index 0d3f55a..bc9e251 100644
--- a/src/views/Login.vue
+++ b/src/views/Login.vue
@@ -65,6 +65,11 @@
{{ loginError }}
+
+
+ zum Kalender
+
+
@@ -95,7 +100,7 @@ export default defineComponent({
};
},
computed: {
- ...mapState(useConfigurationStore, ["clubName"]),
+ ...mapState(useConfigurationStore, ["clubName", "appShow_link_to_calendar"]),
},
mounted() {
this.username = localStorage.getItem("username") ?? "";
From 3b89262ce9b06c343b727ff72ba39607c856d4d5 Mon Sep 17 00:00:00 2001
From: Julian Krauser
Date: Mon, 2 Jun 2025 13:30:16 +0200
Subject: [PATCH 08/17] add note field to member
---
src/components/admin/club/member/CreateMemberModal.vue | 5 +++++
src/viewmodels/admin/club/member/member.models.ts | 3 +++
src/views/admin/club/members/MemberEdit.vue | 6 +++++-
src/views/admin/club/members/MemberOverview.vue | 10 +++++++---
4 files changed, 20 insertions(+), 4 deletions(-)
diff --git a/src/components/admin/club/member/CreateMemberModal.vue b/src/components/admin/club/member/CreateMemberModal.vue
index b25aa1e..f0974e4 100644
--- a/src/components/admin/club/member/CreateMemberModal.vue
+++ b/src/components/admin/club/member/CreateMemberModal.vue
@@ -80,6 +80,10 @@
+
+
+
+
@@ -154,6 +158,7 @@ export default defineComponent({
nameaffix: formData.nameaffix.value,
birthdate: formData.birthdate.value,
internalId: formData.internalId.value,
+ note: formData.note.value,
};
this.status = "loading";
this.createMember(createMember)
diff --git a/src/viewmodels/admin/club/member/member.models.ts b/src/viewmodels/admin/club/member/member.models.ts
index 7701876..53b1d50 100644
--- a/src/viewmodels/admin/club/member/member.models.ts
+++ b/src/viewmodels/admin/club/member/member.models.ts
@@ -15,6 +15,7 @@ export interface MemberViewModel {
sendNewsletter?: CommunicationViewModel;
smsAlarming?: Array;
preferredCommunication?: Array;
+ note?: string;
}
export interface MemberStatisticsViewModel {
@@ -36,6 +37,7 @@ export interface CreateMemberViewModel {
nameaffix: string;
birthdate: Date;
internalId?: string;
+ note?: string;
}
export interface UpdateMemberViewModel {
@@ -46,4 +48,5 @@ export interface UpdateMemberViewModel {
nameaffix: string;
birthdate: Date;
internalId?: string;
+ note?: string;
}
diff --git a/src/views/admin/club/members/MemberEdit.vue b/src/views/admin/club/members/MemberEdit.vue
index f7ce25f..e233718 100644
--- a/src/views/admin/club/members/MemberEdit.vue
+++ b/src/views/admin/club/members/MemberEdit.vue
@@ -75,6 +75,10 @@
+
+
+
+