diff --git a/components/cms/CmsMitglieder.vue b/components/cms/CmsMitglieder.vue index 86b1ca4..d53664a 100644 --- a/components/cms/CmsMitglieder.vue +++ b/components/cms/CmsMitglieder.vue @@ -53,6 +53,17 @@ +
+ +
+
@@ -239,7 +250,7 @@
Keine Mitglieder gefunden. @@ -252,7 +263,7 @@ class="space-y-4" >
@@ -408,7 +419,7 @@
Keine Mitglieder gefunden. @@ -769,6 +780,7 @@ const showModal = ref(false) const editingMember = ref(null) const errorMessage = ref('') const viewMode = ref('cards') +const filterHasHallKey = ref(false) // Bulk import state const showBulkImportModal = ref(false) @@ -799,6 +811,11 @@ const canViewContactData = computed(() => { return authStore.hasRole('vorstand') }) +const filteredMembers = computed(() => { + if (!filterHasHallKey.value) return members.value + return members.value.filter(member => member.hasHallKey) +}) + const loadMembers = async () => { isLoading.value = true try { diff --git a/pages/mitgliederbereich/mitglieder.vue b/pages/mitgliederbereich/mitglieder.vue index 9264a31..470065c 100644 --- a/pages/mitgliederbereich/mitglieder.vue +++ b/pages/mitgliederbereich/mitglieder.vue @@ -55,13 +55,23 @@
-
+
+
+
+
@@ -246,7 +256,7 @@
Keine Mitglieder gefunden. @@ -412,7 +422,7 @@
Keine Mitglieder gefunden. @@ -811,10 +821,13 @@ // ...existing code... const sortMode = ref('name') +const filterHasHallKey = ref(false) const sortedMembers = computed(() => { if (!Array.isArray(members.value)) return [] - const arr = [...members.value] + const arr = filterHasHallKey.value + ? members.value.filter(member => member.hasHallKey) + : [...members.value] if (sortMode.value === 'name') { arr.sort((a, b) => { // Sortiere nach Vorname Nachname (firstName lastName)