diff --git a/server/api/members.get.js b/server/api/members.get.js index 735ceb7..51727b5 100644 --- a/server/api/members.get.js +++ b/server/api/members.get.js @@ -215,22 +215,22 @@ export default defineEventHandler(async (event) => { const contactHidden = (!emailVisible && hadEmail) || (!phoneVisible && hadPhone) || (!addressVisible && hadAddress) return { - id: member.id, - name: member.name, - source: member.source, - editable: member.editable, - hasLogin: member.hasLogin, - loginRoles: member.loginRoles, - loginRole: member.loginRole, - lastLogin: member.lastLogin, - isMannschaftsspieler: member.isMannschaftsspieler, - notes: member.notes || '', - // Privileged viewers (vorstand) always see contact fields - email: emailVisible ? member.email : undefined, - phone: phoneVisible ? member.phone : undefined, - address: addressVisible ? member.address : undefined, - // Birthday: expose only day + month and only if allowed; do not expose year or age - birthday: (birthdayVisible && hadBirthday) ? (function(){ + id: member.id, + name: member.name, + source: member.source, + editable: member.editable, + hasLogin: member.hasLogin, + loginRoles: member.loginRoles, + loginRole: member.loginRole, + lastLogin: member.lastLogin, + isMannschaftsspieler: member.isMannschaftsspieler, + notes: member.notes || '', + // Privileged viewers (vorstand) always see contact fields + email: emailVisible ? member.email : undefined, + phone: phoneVisible ? member.phone : undefined, + address: addressVisible ? member.address : undefined, + // Birthday: expose only day + month and only if allowed; do not expose year or age + birthday: (birthdayVisible && hadBirthday) ? (function(){ try { const d = new Date(member.geburtsdatum) if (isNaN(d.getTime())) return undefined @@ -241,10 +241,11 @@ export default defineEventHandler(async (event) => { return undefined } })() : undefined, - // Flag for UI: data existed but is hidden to the current viewer - contactHidden - } - }) + geburtsdatum: member.geburtsdatum || undefined, // Originalfeld für das Edit-Formular + // Flag for UI: data existed but is hidden to the current viewer + contactHidden + } +}) return { success: true,