diff --git a/pages/mitgliederbereich/qttr.vue b/pages/mitgliederbereich/qttr.vue index 202dcd1..ae3b5d0 100755 --- a/pages/mitgliederbereich/qttr.vue +++ b/pages/mitgliederbereich/qttr.vue @@ -124,7 +124,7 @@ function isMaleGender(value) { function isFemaleGender(value) { const gender = normalizeName(value) - return gender.startsWith('w') || gender.includes('weib') || gender.includes('frau') + return gender.startsWith('w') || gender.includes('weib') || gender.includes('frau') || gender.includes('female') } function isOwnRow(playerName) { diff --git a/server/utils/qttr-import.js b/server/utils/qttr-import.js index 7eb35e6..7cdaad2 100755 --- a/server/utils/qttr-import.js +++ b/server/utils/qttr-import.js @@ -61,8 +61,8 @@ function toNumberOrNull(value) { function normalizeGender(value) { const normalized = String(value || '').trim().toLowerCase() - if (normalized === 'm' || normalized === 'männlich') return 'männlich' - if (normalized === 'w' || normalized === 'weiblich') return 'weiblich' + if (['m', 'männlich', 'maennlich', 'male', 'man'].includes(normalized)) return 'männlich' + if (['w', 'weiblich', 'female', 'woman', 'f'].includes(normalized)) return 'weiblich' return normalized || null } @@ -228,7 +228,7 @@ async function importAuthenticatedTtrValues(connection) { return ({ rank: toNumberOrNull(entry.rank ?? entry.ranking ?? index + 1), playerNumber: toNumberOrNull(entry.playernr ?? entry.player_number ?? entry.nuid), - gender: normalizeGender(entry.gender), + gender: normalizeGender(entry.gender ?? entry.sex ?? entry.genderCode ?? entry.gender_code), playerName: `${entry.firstname ?? entry.first_name ?? ''} ${entry.lastname ?? entry.last_name ?? ''}`.trim() || entry.name || null, clubName: entry.clubname ?? entry.club_name ?? 'Harheimer TC', currentQttr: toNumberOrNull(qttrEntry?.fedRank ?? qttrEntry?.qttr ?? entry.qttr),