Benachrichtigungen erweitert
Emails korrigiert
This commit is contained in:
@@ -550,6 +550,25 @@
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center">
|
||||
<input
|
||||
id="showBirthday"
|
||||
v-model="formData.showBirthday"
|
||||
type="checkbox"
|
||||
class="h-4 w-4 text-primary-600 focus:ring-primary-500 border-gray-300 rounded"
|
||||
:disabled="isSaving || !canDisableBirthdayVisibility"
|
||||
>
|
||||
<label
|
||||
for="showBirthday"
|
||||
class="ml-2 block text-sm font-medium text-gray-700"
|
||||
>
|
||||
Geburtstag in Mitgliederliste und Benachrichtigungen anzeigen
|
||||
</label>
|
||||
</div>
|
||||
<p class="-mt-3 text-xs text-gray-500">
|
||||
Admins und Vorstand können die Sichtbarkeit nur ausschalten. Einschalten kann nur das Mitglied selbst im Profil.
|
||||
</p>
|
||||
|
||||
<div
|
||||
v-if="errorMessage"
|
||||
class="flex items-center p-3 rounded-md bg-red-50 text-red-700 text-sm"
|
||||
@@ -846,7 +865,8 @@ const formData = ref({
|
||||
address: '',
|
||||
notes: '',
|
||||
isMannschaftsspieler: false,
|
||||
hasHallKey: false
|
||||
hasHallKey: false,
|
||||
showBirthday: false
|
||||
})
|
||||
|
||||
const canEdit = computed(() => {
|
||||
@@ -861,6 +881,10 @@ const isBirthdateRequired = computed(() => {
|
||||
return !editingMember.value || Boolean(editingMember.value?.geburtsdatum)
|
||||
})
|
||||
|
||||
const canDisableBirthdayVisibility = computed(() => {
|
||||
return editingMember.value?.showBirthday === true
|
||||
})
|
||||
|
||||
const filteredMembers = computed(() => {
|
||||
if (!filterHasHallKey.value) return members.value
|
||||
return members.value.filter(member => member.hasHallKey)
|
||||
@@ -880,7 +904,7 @@ const loadMembers = async () => {
|
||||
|
||||
const openAddModal = () => {
|
||||
editingMember.value = null
|
||||
formData.value = { firstName: '', lastName: '', geburtsdatum: '', email: '', phone: '', address: '', notes: '', isMannschaftsspieler: false, hasHallKey: false }
|
||||
formData.value = { firstName: '', lastName: '', geburtsdatum: '', email: '', phone: '', address: '', notes: '', isMannschaftsspieler: false, hasHallKey: false, showBirthday: false }
|
||||
showModal.value = true
|
||||
errorMessage.value = ''
|
||||
}
|
||||
@@ -896,7 +920,8 @@ const openEditModal = (member) => {
|
||||
address: member.address || '',
|
||||
notes: member.notes || '',
|
||||
isMannschaftsspieler: member.isMannschaftsspieler === true,
|
||||
hasHallKey: member.hasHallKey === true
|
||||
hasHallKey: member.hasHallKey === true,
|
||||
showBirthday: member.showBirthday === true
|
||||
}
|
||||
showModal.value = true
|
||||
errorMessage.value = ''
|
||||
@@ -914,7 +939,14 @@ const saveMember = async () => {
|
||||
try {
|
||||
await $fetch('/api/members', {
|
||||
method: 'POST',
|
||||
body: { id: editingMember.value?.id, ...formData.value }
|
||||
body: {
|
||||
id: editingMember.value?.id,
|
||||
...formData.value,
|
||||
visibility: {
|
||||
...(editingMember.value?.visibility || {}),
|
||||
showBirthday: formData.value.showBirthday === true
|
||||
}
|
||||
}
|
||||
})
|
||||
closeModal()
|
||||
await loadMembers()
|
||||
|
||||
Reference in New Issue
Block a user