diff --git a/frontend/src/views/MembersView.vue b/frontend/src/views/MembersView.vue index b030e08..a609290 100644 --- a/frontend/src/views/MembersView.vue +++ b/frontend/src/views/MembersView.vue @@ -60,7 +60,6 @@ Geburtsdatum Telefon-Nr. Email-Adresse - Geschlecht @@ -74,12 +73,16 @@ {{ member.picsInInternetAllowed ? '✓' : '' }} {{ member.testMembership ? '*' : '' }} - {{ member.lastName }}, {{ member.firstName }} + + {{ genderSymbol(member.gender) }} + + {{ member.lastName }}, {{ member.firstName }} + + {{ member.street }}, {{ member.city }} {{ getFormattedBirthdate(member.birthDate) }} {{ member.phone }} {{ member.email }} - {{ member.gender || 'unknown' }} @@ -354,6 +357,20 @@ export default { const date = new Date(birthDate); return `${String(date.getDate()).padStart(2, '0')}.${String(date.getMonth() + 1).padStart(2, '0')}.${date.getFullYear()}`; }, + labelGender(g) { + const v = (g || 'unknown'); + if (v === 'male') return 'Männlich'; + if (v === 'female') return 'Weiblich'; + if (v === 'diverse') return 'Divers'; + return 'Unbekannt'; + }, + genderSymbol(g) { + const v = (g || 'unknown'); + if (v === 'male') return '♂'; + if (v === 'female') return '♀'; + if (v === 'diverse') return '⚧'; + return ''; + } } } @@ -448,4 +465,24 @@ table td { text-decoration: none; cursor: pointer; } + +.badge { + display: inline-block; + padding: 2px 8px; + border-radius: 999px; + font-size: 0.85rem; + border: 1px solid #ddd; + background: #f5f5f5; +} +.gender-symbol, .gender-name { background: transparent; border: none; } + +.gender-name.gender-male { color: #1a73e8; } +.gender-name.gender-female { color: #d81b60; } +.gender-name.gender-diverse { color: #6a1b9a; } +.gender-name.gender-unknown { color: #444; } +.gender-symbol.gender-male { color: #1a73e8; } +.gender-symbol.gender-female { color: #d81b60; } +.gender-symbol.gender-diverse { color: #6a1b9a; } +.gender-symbol.gender-unknown { color: #444; } +.gender-symbol { margin-right: .35rem; opacity: .9; font-size: 1.05em; display: inline-block; width: 1.1em; text-align: center; }