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)