Files
MyClub/DOCS/PLAYER_NATIONALITY_TRANSLATIONS.md
T
Tomáš Dvořák 12cba639b9 upload
2025-10-16 13:32:05 +02:00

66 lines
2.2 KiB
Markdown

# Překlad národností hráčů do češtiny
## Implementované změny
### 1. Rozšíření překladové funkce (`frontend/src/utils/nationality.ts`)
Funkce `translateNationality` nyní podporuje:
- **Kódy zemí** (např. "CZ", "SK", "PL") → překládá na česky
- **Plné názvy zemí** (např. "Czechia", "Slovakia", "Poland") → překládá na česky
#### Příklady překladů:
- `Czechia``Česká republika`
- `CZ``Česká republika`
- `Slovakia``Slovensko`
- `Poland``Polsko`
- `Germany``Německo`
- `United Kingdom``Velká Británie`
### 2. Admin stránka hráčů (`frontend/src/pages/admin/PlayersAdminPage.tsx`)
**Změny v tabulce:**
- Přidán sloupec "Národnost" mezi "Pozice" a "Číslo"
- Národnosti se zobrazují v češtině pomocí `translateNationality()`
**Změny v dropdown seznamu:**
- Národnosti se zobrazují v formátu: `🇨🇿 Česká republika (Czechia)`
- Uživatel vidí český překlad, ale systém ukládá anglický název (z REST Countries API)
- Zachováno vyhledávání a fuzzy matching
### 3. Detail hráče (`frontend/src/pages/PlayerDetailPage.tsx`)
- **Již implementováno:** Stránka již používá `translateNationality()` funkci (řádek 10, 73)
- Národnosti se zobrazují v češtině
## Technické detaily
### Podporované země (výběr):
- Česká republika (Czechia, Czech Republic, CZ)
- Slovensko (Slovakia, SK)
- Polsko (Poland, PL)
- Německo (Germany, DE)
- Rakousko (Austria, AT)
- Ukrajina (Ukraine, UA)
- + dalších 30+ zemí
### Datový tok:
1. **Admin** vybere zemi ze seznamu (vidí: "🇨🇿 Česká republika (Czechia)")
2. **Backend** uloží: `nationality: "Czechia"` (anglický název)
3. **Frontend** zobrazí: "Česká republika" (český překlad)
## Co funguje:
✅ Admin panel - tabulka hráčů zobrazuje české názvy
✅ Admin panel - formulář zobrazuje české názvy v dropdown
✅ Veřejná stránka - detail hráče zobrazuje české názvy
✅ Podpora pro kódy i plné názvy zemí
✅ Fallback na původní hodnotu, pokud překlad neexistuje
## Použití:
```typescript
import { translateNationality } from '../utils/nationality';
// V komponentě:
<Text>Národnost: {translateNationality(player.nationality)}</Text>
```