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

2.2 KiB

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
  • SlovakiaSlovensko
  • PolandPolsko
  • GermanyNěmecko
  • United KingdomVelká 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í:

import { translateNationality } from '../utils/nationality';

// V komponentě:
<Text>Národnost: {translateNationality(player.nationality)}</Text>