Stand: SMTP-Test, Admin-Mail-Tab, Notifiable-Fix, Lazy-Quill

- Fix: Notifiable-Trait zum User-Model hinzugefuegt (behebt notify()-500er)
- Installer: SMTP-Verbindungstest mit EsmtpTransport + Ueberspringen-Link
- Admin: Neuer E-Mail-Tab mit SMTP-Konfiguration + Verbindungstest
- Admin: Lazy Quill-Initialisierung (nur sichtbare Locale wird geladen)
- Uebersetzungen: 17 neue Mail-Keys in allen 6 Sprachen

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Rhino
2026-03-02 07:30:37 +01:00
commit 2e24a40d68
9633 changed files with 1300799 additions and 0 deletions

549
lang/pl/admin.php Executable file
View File

@@ -0,0 +1,549 @@
<?php
return [
'dashboard_title' => 'Panel administratora',
'stat_users' => 'Użytkownicy',
'stat_players' => 'Zawodnicy',
'stat_upcoming' => 'Nadchodzące terminy',
'stat_invitations' => 'Otwarte zaproszenia',
'quick_links' => 'Szybki dostęp',
'new_event' => 'Nowy termin',
'new_player' => 'Nowy zawodnik',
'new_invitation' => 'Nowe zaproszenie',
'new_team' => 'Nowa drużyna',
'open_responses_title' => 'Terminy z otwartymi odpowiedziami',
'x_open' => ':count otwarte',
'nav_teams' => 'Drużyny',
'nav_players' => 'Zawodnicy',
'nav_users' => 'Użytkownicy',
'nav_invitations' => 'Zaproszenia',
'nav_events' => 'Wydarzenia',
'nav_settings' => 'Ustawienia',
'nav_verwaltung' => 'Zarządzanie',
'actions' => 'Akcje',
'action' => 'Akcja',
'please_select' => 'Proszę wybrać',
'back_to_list' => 'Powrót do listy',
'inactive' => 'Nieaktywny',
'nr' => 'Nr',
'photo' => 'Zdjęcie',
'date' => 'Data',
'location' => 'Miejsce',
'all_status' => 'Wszystkie statusy',
'copied' => 'Skopiowano!',
'copy' => 'Kopiuj',
'created_by' => 'od',
'valid_until' => 'ważne do',
'teams_title' => 'Drużyny',
'team_created' => 'Drużyna została utworzona.',
'team_updated' => 'Drużyna została zaktualizowana.',
'team_name' => 'Nazwa drużyny',
'year_group' => 'Rocznik',
'year_group_placeholder' => 'np. 2017/18',
'active' => 'Aktywny',
'team_is_active' => 'Drużyna jest aktywna',
'create_team' => 'Utwórz drużynę',
'edit_team' => 'Edytuj drużynę',
'no_teams_yet' => 'Brak drużyn.',
'team_notes' => 'Notatki',
'team_notes_placeholder' => 'Notatki o drużynie (wewnętrzne, widoczne tylko dla administratorów)...',
'team_coaches' => 'Trenerzy',
'no_coaches_available' => 'Brak trenerów w systemie.',
'team_players' => 'Zawodnicy',
'team_parent_reps' => 'Przedstawiciele rodziców',
'team_parent_reps_hint' => 'Rodzice z rolą "Przedstawiciel rodziców", którzy mają dzieci w tej drużynie.',
'no_parent_reps' => 'Brak przedstawicieli rodziców dla tej drużyny.',
'log_team_updated' => 'Drużyna ":name" została zaktualizowana',
'log_player_team_changed' => 'Zawodnik :name został przeniesiony do innej drużyny',
'players_title' => 'Zawodnicy',
'player_created' => 'Zawodnik został utworzony.',
'player_updated' => 'Zawodnik został zaktualizowany.',
'first_name' => 'Imię',
'last_name' => 'Nazwisko',
'birth_year' => 'Rok urodzenia',
'jersey_number' => 'Numer na koszulce',
'photo_permission' => 'Zgoda na zdjęcia',
'notes' => 'Notatki',
'parent_assigned' => 'Rodzic został przypisany.',
'parent_removed' => 'Przypisanie zostało usunięte.',
'assign_parent' => 'Przypisz rodzica',
'add_parent' => 'Dodaj rodzica',
'select_user' => 'Wybierz użytkownika',
'assign' => 'Przypisz',
'relationship_label' => 'Relacja',
'relationship_placeholder' => 'np. Matka, Ojciec',
'parents' => 'Rodzice',
'player_data' => 'Dane zawodnika',
'parent_assignment' => 'Przypisanie rodziców',
'no_parents_yet' => 'Brak przypisanych rodziców.',
'confirm_remove_parent' => 'Na pewno usunąć przypisanie?',
'remove' => 'Usuń',
'no_players_yet' => 'Brak zawodników.',
'users_title' => 'Użytkownicy',
'user_toggled' => 'Użytkownik został :status.',
'role_updated' => 'Rola została zaktualizowana.',
'cannot_deactivate_self' => 'Nie możesz dezaktywować własnego konta.',
'cannot_change_own_role' => 'Nie możesz zmienić własnej roli.',
'activated' => 'aktywowany',
'deactivated' => 'dezaktywowany',
'deactivated_label' => 'Dezaktywowany',
'children' => 'Dzieci',
'phone' => 'Telefon',
'last_login' => 'Ostatnie logowanie',
'never' => 'Nigdy',
'deactivate' => 'Dezaktywuj',
'activate' => 'Aktywuj',
'you_suffix' => '(ty)',
'edit' => 'Edytuj',
'edit_user' => 'Edytuj użytkownika',
'user_data' => 'Dane użytkownika',
'user_updated' => 'Użytkownik został zaktualizowany.',
'reset_password' => 'Zresetuj hasło',
'reset_password_hint' => 'Generuje nowe losowe hasło. Stare hasło stanie się nieważne.',
'reset_password_confirm' => 'Wygenerować nowe losowe hasło? Stare hasło stanie się nieważne.',
'password_reset_success' => 'Nowe hasło zostało wygenerowane.',
'new_password_label' => 'Nowe hasło (widoczne tylko raz):',
'password_only_visible_now' => 'To hasło jest wyświetlane tylko teraz. Przekaż je i nie odświeżaj strony.',
'cannot_edit_own_role' => 'Nie możesz tutaj zmienić swojej roli.',
'cannot_assign_admin_role' => 'Nie możesz przypisać roli administratora.',
'cannot_reset_own_password' => 'Nie możesz zresetować własnego hasła przez panel administracyjny.',
'registered_at' => 'Zarejestrowany',
'invitations_title' => 'Zaproszenia',
'invitation_created' => 'Zaproszenie utworzone. Link: :link',
'invitation_deleted' => 'Zaproszenie zostało usunięte.',
'invitation_already_used' => 'Wykorzystane zaproszenia nie mogą zostać usunięte.',
'create_invitation' => 'Utwórz zaproszenie',
'assign_players' => 'Przypisz zawodników',
'email_optional' => 'Adres e-mail (opcjonalnie)',
'email_optional_hint' => 'Jeśli podany, tylko ten adres e-mail może się zarejestrować',
'expires_at' => 'Ważne do',
'valid_for_days' => 'Ważne przez (dni)',
'token' => 'Token',
'status' => 'Status',
'used' => 'Wykorzystane',
'expired' => 'Wygasłe',
'pending' => 'Otwarte',
'copy_link' => 'Kopiuj link',
'invite_link' => 'Link zaproszenia',
'no_assignment' => 'Brak przypisania',
'no_invitations_yet' => 'Brak zaproszień.',
'no_active_players' => 'Brak aktywnych zawodników.',
'confirm_delete_invitation' => 'Na pewno usunąć zaproszenie?',
'created_label' => 'Utworzono',
'player_assignment_hint' => 'Wybierz dzieci, które mają zostać automatycznie przypisane do nowego konta rodzica.',
'events_title' => 'Wydarzenia',
'event_created' => 'Wydarzenie zostało utworzone.',
'event_updated' => 'Wydarzenie zostało zaktualizowane.',
'event_deleted' => 'Wydarzenie zostało usunięte.',
'event_title' => 'Tytuł',
'start_at' => 'Początek',
'date' => 'Data',
'time' => 'Godzina',
'end_at' => 'Koniec',
'location_name' => 'Nazwa miejsca',
'address' => 'Adres',
'description' => 'Opis',
'search_address' => 'Szukaj adresu...',
'new_event_title' => 'Nowe wydarzenie',
'edit_event_title' => 'Edytuj wydarzenie',
'no_events_yet' => 'Brak wydarzeń.',
'confirm_delete_event' => 'Na pewno usunąć wydarzenie?',
'location_address' => 'Miejsce / Adres',
'location_name_hint' => 'Nazwa miejsca (np. Hala sportowa Północ)',
'search_by_name' => 'Znajdź adres',
'location_name_placeholder' => 'np. Stadion BVB, Hala Sportowa...',
'search_address_hint' => 'Wpisz adres (min. 3 znaki)...',
'description_placeholder' => 'Wpisz opis...',
'assignments' => 'Przypisania',
'catering_assignment' => 'Catering',
'timekeeper_assignment' => 'Chronometrażysta',
'geocoding_error' => 'Wyszukiwanie adresu nie powiodło się. Spróbuj ponownie.',
'geocoding_rate_limit' => 'Zbyt wiele zapytań. Poczekaj chwilę.',
'geocoding_no_results' => 'Nie znaleziono adresu. Wpisz dokładniej.',
'min_requirements' => 'Minimalne wymagania',
'min_players' => 'Min. zawodnicy',
'min_parents' => 'Min. rodzice',
'min_catering' => 'Min. catering',
'min_timekeepers' => 'Min. chronometrażyści',
'event_defaults_title' => 'Domyślne minimalne wartości wydarzeń',
'event_defaults_description' => 'Ustaw domyślne minimalne wartości dla nowych wydarzeń. Admini mogą je zmienić podczas tworzenia.',
// Zarządzanie lokalizacjami
'nav_locations' => 'Lokalizacje',
'locations_title' => 'Zarządzanie lokalizacjami',
'location_add' => 'Dodaj nową lokalizację',
'location_name_label' => 'Nazwa',
'location_save' => 'Zapisz',
'location_created' => 'Lokalizacja została utworzona.',
'location_updated' => 'Lokalizacja została zaktualizowana.',
'location_deleted' => 'Lokalizacja została usunięta.',
'location_confirm_delete' => 'Naprawdę usunąć tę lokalizację?',
'locations_empty' => 'Brak lokalizacji.',
'known_locations' => 'Znane lokalizacje',
'address_manual_hint' => 'Wpisz adres ręcznie...',
// Ustawienia
'settings_title' => 'Ustawienia',
'settings_saved' => 'Ustawienia zapisane.',
'settings_tab_general' => 'Ogólne',
'settings_tab_legal' => 'Prawne',
'settings_tab_defaults' => 'Domyślne dla wydarzeń',
'settings_tab_categories' => 'Kategorie plików',
// Zarządzanie plikami
'nav_files' => 'Pliki',
'files_title' => 'Zarządzanie plikami',
'upload_file' => 'Prześlij plik',
'file_uploaded' => 'Plik został przesłany.',
'file_deleted' => 'Plik został usunięty.',
'file_category' => 'Kategoria',
'select_category' => 'Wybierz kategorię',
'no_files_yet' => 'Brak plików w tej kategorii.',
'no_files_at_all' => 'Nie przesłano jeszcze żadnych plików.',
'file_size' => 'Rozmiar',
'uploaded_by' => 'Przesłane przez',
'uploaded_at' => 'Przesłano dnia',
'confirm_delete_file' => 'Naprawdę usunąć ten plik? Wszystkie powiązania z wydarzeniami zostaną usunięte.',
'allowed_file_types' => 'Dozwolone typy plików: PDF, DOCX, XLSX, Obrazy (JPG, PNG, GIF, WEBP)',
'max_file_size' => 'Maksymalny rozmiar pliku: 10 MB',
'file_categories' => 'Kategorie plików',
'file_categories_description' => 'Zarządzaj kategoriami plików.',
'new_category' => 'Nowa kategoria',
'category_name' => 'Nazwa kategorii',
'category_created' => 'Kategoria została utworzona.',
'category_updated' => 'Kategoria została zaktualizowana.',
'category_deleted' => 'Kategoria została usunięta.',
'category_not_empty' => 'Nie można usunąć kategorii, ponieważ zawiera pliki.',
'confirm_delete_category' => 'Naprawdę usunąć tę kategorię?',
'event_files' => 'Pliki',
'attach_from_library' => 'Dołącz z biblioteki',
'upload_new_file' => 'Prześlij nowy plik',
'attached_files' => 'Dołączone pliki',
'detach_file' => 'Usuń',
'no_attached_files' => 'Brak dołączonych plików.',
'profile_picture' => 'Zdjęcie profilowe',
'upload_picture' => 'Prześlij zdjęcie',
'remove_picture' => 'Usuń zdjęcie',
'picture_uploaded' => 'Zdjęcie profilowe zostało zaktualizowane.',
'picture_removed' => 'Zdjęcie profilowe zostało usunięte.',
'max_picture_size' => 'Maks. 2 MB (JPG, PNG, GIF, WEBP)',
'html_anchor_hint' => 'Wskazówka: Dodaj kotwice z atrybutem id, np. &lt;h3 id="cookies"&gt;',
// Soft-Delete
'danger_zone' => 'Strefa zagrożenia',
'delete_user' => 'Usuń użytkownika',
'delete_user_hint' => 'Użytkownik zostanie dezaktywowany i może być przywrócony w ciągu 7 dni. Dane historyczne (komentarze, uczestnictwa) zostaną zachowane.',
'delete_player' => 'Usuń zawodnika',
'delete_player_hint' => 'Zawodnik zostanie usunięty i może być przywrócony w ciągu 7 dni. Dane historyczne (uczestnictwa, wydarzenia) zostaną zachowane.',
'user_status_label' => 'Status użytkownika',
'player_status_label' => 'Status zawodnika',
'deactivate_user_hint' => 'Użytkownik nie będzie mógł się zalogować.',
'activate_user_hint' => 'Użytkownik będzie mógł się ponownie zalogować.',
'deactivate_player_hint' => 'Zawodnik nie będzie wyświetlany na listach terminów.',
'activate_player_hint' => 'Zawodnik będzie ponownie wyświetlany na listach terminów.',
'player_toggled' => 'Zawodnik :status.',
'log_player_toggled' => 'Zawodnik :name :status',
'confirm_delete_user' => 'Czy na pewno chcesz usunąć tego użytkownika? Można go przywrócić w ciągu 7 dni.',
'confirm_delete_player' => 'Czy na pewno chcesz usunąć tego gracza? Można go przywrócić w ciągu 7 dni.',
'user_deleted' => 'Użytkownik został usunięty.',
'user_restored' => 'Użytkownik został przywrócony.',
'player_deleted' => 'Gracz został usunięty.',
'player_restored' => 'Gracz został przywrócony.',
'cannot_delete_self' => 'Nie możesz usunąć samego siebie.',
'cannot_delete_main_admin' => 'Główny administrator nie może zostać usunięty.',
'restore_expired' => 'Okres przywracania wygasł.',
'trash' => 'Kosz',
'restore' => 'Przywróć',
'delete' => 'Usuń',
'deleted_at' => 'Usunięto',
// Activity Log
'activity_log_title' => 'Dziennik aktywności',
'nav_activity_log' => 'Dziennik aktywności',
'log_category' => 'Kategoria',
'log_all_categories' => 'Wszystkie kategorie',
'log_cat_auth' => 'Uwierzytelnianie',
'log_cat_users' => 'Użytkownicy',
'log_cat_players' => 'Gracze',
'log_cat_events' => 'Terminy',
'log_cat_files' => 'Pliki',
'log_cat_settings' => 'Ustawienia',
'log_cat_dsgvo' => 'RODO',
'log_from' => 'Od',
'log_to' => 'Do',
'log_filter' => 'Filtruj',
'log_reset' => 'Resetuj',
'log_time' => 'Czas',
'log_user' => 'Użytkownik',
'log_action' => 'Akcja',
'log_description' => 'Opis',
'log_ip' => 'Adres IP',
'log_system' => 'System',
'log_empty' => 'Brak wpisów.',
'log_details' => 'Szczegóły',
'log_field' => 'Pole',
'log_old_value' => 'Przed',
'log_new_value' => 'Po',
// Log descriptions
'log_login' => ':name zalogował się',
'log_logout' => ':name wylogował się',
'log_login_failed' => 'Nieudana próba logowania dla :email',
'log_registered' => ':name zarejestrował się',
'log_user_updated' => 'Użytkownik :name został zaktualizowany',
'log_user_toggled' => 'Użytkownik :name: status zmieniony na :status',
'log_role_changed' => 'Rola :name zmieniona na :role',
'log_password_reset' => 'Hasło :name zostało zresetowane',
'log_user_deleted' => 'Użytkownik :name został usunięty',
'log_user_restored' => 'Użytkownik :name został przywrócony',
'log_player_created' => 'Gracz :name został utworzony',
'log_player_updated' => 'Gracz :name został zaktualizowany',
'log_player_deleted' => 'Gracz :name został usunięty',
'log_player_restored' => 'Gracz :name został przywrócony',
'log_parent_assigned' => ':parent został przypisany jako rodzic :player',
'log_parent_removed' => ':parent został usunięty jako rodzic :player',
'log_event_created' => 'Termin ":title" został utworzony',
'log_event_updated' => 'Termin ":title" został zaktualizowany',
'log_event_deleted' => 'Termin ":title" został usunięty',
'log_participant_changed' => 'Status uczestnictwa dla ":event" zmieniony na :status',
'log_catering_changed' => 'Status cateringu dla ":event" zmieniony na :status',
'log_timekeeper_changed' => 'Status chronometrażysty dla ":event" zmieniony na :status',
'log_comment_created' => 'Dodano komentarz do ":event"',
'log_comment_deleted' => 'Usunięto komentarz z ":event"',
'log_file_uploaded' => 'Plik ":name" przesłany',
'log_file_deleted' => 'Plik ":name" usunięty',
'log_settings_updated' => 'Ustawienia zostały zaktualizowane',
'log_invitation_created' => 'Zaproszenie utworzone dla :email',
// Statystyki
'nav_statistics' => 'Statystyki',
'statistics_title' => 'Statystyki meczów',
'total_games' => 'Wszystkie mecze',
'wins' => 'Wygrane',
'losses' => 'Przegrane',
'draws' => 'Remisy',
'win_rate' => '% wygranych',
'chart_win_loss' => 'Wygrane / Przegrane',
'chart_player_participation' => 'Udział zawodników',
'chart_parent_involvement' => 'Zaangażowanie rodziców',
'no_games_yet' => 'Brak meczów.',
'filter_from' => 'Od',
'filter_to' => 'Do',
'filter_apply' => 'Filtruj',
'filter_reset' => 'Resetuj',
'all_teams' => 'Wszystkie drużyny',
'not_applicable' => 'N/D',
'min_users' => 'Min. użytkowników',
'home_short' => 'D',
'away_short' => 'W',
'player_ranking_title' => 'Udział zawodników',
'player_ranking_desc' => 'Frekwencja zawodników w :count meczach (domowe i wyjazdowe).',
'games_played' => 'Rozegrane',
'games_assigned' => 'Wyznaczeni',
'participation_rate' => 'Procent',
'parent_ranking_title' => 'Zaangażowanie rodziców',
'parent_ranking_desc' => 'Catering (:catering wydarzeń) i sędziowanie czasu (:timekeeper wydarzeń) — wszystkie opublikowane wydarzenia.',
'total_contributions' => 'Łącznie',
'statistics_enabled_label' => 'Włącz stronę statystyk',
'statistics_enabled_hint' => 'Po wyłączeniu strona statystyk jest widoczna tylko dla administratora.',
// Slogan & Favicon
'slogan_label' => 'Slogan',
'slogan_hint' => 'Wyświetlany na stronie logowania i w stopce.',
'favicon_label' => 'Favicon',
'favicon_hint' => 'ICO, PNG, SVG, JPG (maks. 512 KB)',
'favicon_current' => 'Aktualna ikona',
'favicon_remove' => 'Usuń ikonę',
'favicon_uploaded' => 'Ikona została zaktualizowana.',
'favicon_removed' => 'Ikona została usunięta.',
// Undo / Revert
'log_revert' => 'Cofnij',
'log_revert_confirm' => 'Czy na pewno chcesz cofnąć tę akcję?',
'log_revert_success' => 'Akcja została pomyślnie cofnięta.',
'log_revert_not_possible' => 'Tej akcji nie można cofnąć.',
'log_reverted' => 'Cofnięto: ":desc"',
'event_restored' => 'Wydarzenie zostało przywrócone.',
'log_event_restored' => 'Wydarzenie ":title" zostało przywrócone',
// Widoczność
'settings_tab_visibility' => 'Widoczność',
'visibility_description' => 'Kontroluj, które funkcje są widoczne dla poszczególnych ról. Administratorzy zawsze widzą wszystko.',
'visibility_feature_statistics' => 'Strona statystyk',
'visibility_feature_catering_history' => 'Historia cateringu/chronometrażu',
// Generator list
'nav_list_generator' => 'Generator list',
'list_generator_title' => 'Utwórz listę',
'list_title' => 'Temat',
'list_subtitle' => 'Podtytuł (opcjonalnie)',
'list_notes' => 'Notatki / Opis',
'list_source' => 'Źródło wierszy',
'list_source_players' => 'Zawodnicy',
'list_source_parents' => 'Rodzice',
'list_source_freetext' => 'Dowolny tekst',
'list_freetext_hint' => 'Jedna linia na wpis',
'list_columns' => 'Kolumny',
'list_custom_columns' => 'Dodatkowe kolumny',
'list_add_column' => 'Dodaj kolumnę',
'list_column_name' => 'Nazwa kolumny',
'list_generate' => 'Utwórz listę',
'list_result_title' => 'Lista utworzona',
'list_print' => 'Drukuj / Zapisz jako PDF',
'list_new' => 'Utwórz nową listę',
'list_to_library' => 'Do biblioteki plików',
'list_generated_at' => 'Utworzono',
'list_all_teams' => 'Wszystkie drużyny',
'list_saved_info' => 'Plik ":name" został automatycznie zapisany w bibliotece w kategorii "Ogólne".',
'list_download_pdf' => 'Pobierz PDF',
'list_entries_count' => 'wpisów',
'log_list_generated' => 'Lista ":title" została utworzona',
'no_entries' => 'Brak wpisów.',
// RODO
'dsgvo_title' => 'Zgoda RODO',
'dsgvo_short' => 'RODO',
'dsgvo_consent_label' => 'Zgoda potwierdzona',
'dsgvo_view_document' => 'Zobacz dokument',
'dsgvo_confirm' => 'Potwierdź',
'dsgvo_revoke' => 'Cofnij',
'dsgvo_toggled' => 'Status RODO został zaktualizowany.',
'dsgvo_no_file' => 'Nie przesłano jeszcze żadnego dokumentu.',
'dsgvo_no_document' => 'Użytkownik nie przesłał jeszcze zgody.',
'dsgvo_not_confirmed' => 'Jeszcze nie potwierdzone. Proszę sprawdzić dokument i potwierdzić.',
'dsgvo_confirmed_info' => 'Potwierdzone przez :name dnia :date',
'dsgvo_confirmed_tooltip' => 'Zgoda RODO potwierdzona',
'dsgvo_pending_tooltip' => 'Dokument przesłany, potwierdzenie oczekujące',
'dsgvo_missing_tooltip' => 'Brak dokumentu',
'dsgvo_events_title' => 'Zdarzenia RODO (ostatnie 10)',
'dsgvo_action_dsgvo_consent_uploaded' => 'Przesłano',
'dsgvo_action_dsgvo_consent_confirmed' => 'Potwierdzono',
'dsgvo_action_dsgvo_consent_revoked' => 'Cofnięto',
'dsgvo_action_dsgvo_consent_removed' => 'Usunięto',
'dsgvo_action_account_self_deleted' => 'Konto usunięte',
'dsgvo_action_child_auto_deactivated' => 'Dziecko dezaktywowane',
'log_dsgvo_consent_uploaded' => ':name przesłał/a zgodę',
'log_dsgvo_confirmed' => 'Zgoda :name została potwierdzona',
'log_dsgvo_revoked' => 'Potwierdzenie zgody :name zostało cofnięte',
'log_dsgvo_consent_removed' => ':name usunął/ęła zgodę',
'log_account_self_deleted' => ':name usunął/ęła własne konto',
'log_child_auto_deactivated' => 'Gracz :child został automatycznie dezaktywowany (jedyny rodzic :parent usunął konto)',
// RODO Pending Widget
'dsgvo_pending_title' => 'RODO — Potwierdzenie oczekujące',
'dsgvo_pending_count' => ':count deklaracja(e) oczekująca(e)',
'dsgvo_consent_document' => 'Deklaracja zgody RODO',
'dsgvo_reject' => 'Odrzuć',
'dsgvo_reject_confirm' => 'Czy na pewno chcesz odrzucić tę deklarację zgody? Dokument zostanie usunięty, a użytkownik będzie musiał go ponownie przesłać.',
'dsgvo_rejected' => 'Deklaracja zgody została odrzucona.',
'log_dsgvo_rejected' => 'Deklaracja zgody :name została odrzucona',
'dsgvo_action_dsgvo_consent_rejected' => 'Odrzucono',
'dsgvo_preview_not_available' => 'Podgląd niedostępny dla tego typu pliku.',
// Factory Reset
'factory_reset_title' => 'Pełny reset',
'factory_reset_description' => 'Resetuje całą aplikację do stanu początkowego. Po resecie zostanie uruchomiony kreator instalacji.',
'factory_reset_deletes' => 'Następujące dane zostaną trwale usunięte',
'factory_reset_item_users' => 'Wszyscy użytkownicy (łącznie z administratorem)',
'factory_reset_item_data' => 'Wszystkie drużyny, zawodnicy, terminy, komentarze',
'factory_reset_item_settings' => 'Wszystkie ustawienia i kategorie plików',
'factory_reset_item_files' => 'Wszystkie przesłane pliki i zdjęcia profilowe',
'factory_reset_warning' => 'Tej operacji NIE MOŻNA cofnąć! Aplikacja zostanie całkowicie zresetowana i uruchomiony zostanie kreator instalacji.',
'factory_reset_confirm' => 'UWAGA: Cała aplikacja zostanie nieodwracalnie zresetowana i wszystkie dane usunięte. Kreator instalacji zostanie uruchomiony ponownie. Czy na pewno?',
'factory_reset_button' => 'Zresetuj aplikację całkowicie',
// Licencja i wsparcie
'settings_tab_license' => 'Licencja i wsparcie',
'license_title' => 'Klucz licencyjny',
'license_description' => 'Wprowadź klucz licencyjny, aby otrzymywać wsparcie i aktualizacje.',
'license_key_label' => 'Klucz licencyjny',
'license_invalid' => 'Wprowadzony klucz licencyjny jest nieprawidłowy.',
'registration_status' => 'Status rejestracji',
'registration_active' => 'Zarejestrowano',
'registration_inactive' => 'Niezarejestrowano',
'register_now' => 'Zarejestruj teraz',
'registration_success' => 'Instalacja została pomyślnie zarejestrowana.',
'registration_failed' => 'Rejestracja nie powiodła się. Spróbuj ponownie później.',
'version_info' => 'Informacje o systemie',
'update_available' => 'Dostępna aktualizacja: Wersja :version',
'update_details' => 'Pokaż szczegóły',
'download_update' => 'Pobierz aktualizację',
'installation_id_label' => 'ID instalacji',
'nav_support' => 'Wsparcie',
'support_title' => 'Zgłoszenia wsparcia',
'support_not_registered' => 'Instalacja niezarejestrowana',
'support_register_hint' => 'Aby korzystać ze wsparcia, instalacja musi być zarejestrowana. Przesyłane są tylko dane techniczne (nazwa aplikacji, URL, wersja PHP).',
'support_new_ticket' => 'Utwórz nowe zgłoszenie',
'support_subject' => 'Temat',
'support_category' => 'Kategoria',
'support_category_bug' => 'Raport o błędzie',
'support_category_feature' => 'Prośba o funkcję',
'support_category_question' => 'Pytanie',
'support_category_other' => 'Inne',
'support_message' => 'Wiadomość',
'support_submit' => 'Wyślij zgłoszenie',
'support_reply' => 'Odpowiedz',
'support_send_reply' => 'Wyślij odpowiedź',
'support_reply_placeholder' => 'Napisz swoją odpowiedź...',
'support_ticket_created' => 'Zgłoszenie zostało utworzone.',
'support_reply_sent' => 'Odpowiedź została wysłana.',
'support_submit_failed' => 'Nie udało się utworzyć zgłoszenia. Spróbuj ponownie później.',
'support_reply_failed' => 'Nie udało się wysłać odpowiedzi. Spróbuj ponownie później.',
'support_ticket_not_found' => 'Zgłoszenie nie zostało znalezione.',
'support_no_tickets' => 'Brak zgłoszeń.',
'support_no_messages' => 'Brak wiadomości.',
'support_ticket_id' => 'Nr zgłoszenia',
'support_status' => 'Status',
'support_status_open' => 'Otwarte',
'support_status_in_progress' => 'W trakcie',
'support_status_waiting' => 'Oczekujące',
'support_status_closed' => 'Zamknięte',
'support_created_at' => 'Utworzono',
'support_last_reply' => 'Ostatnia odpowiedź',
'support_back_to_list' => 'Powrót do przeglądu',
'support_system_info_note' => 'Informacje o systemie zostaną wysłane automatycznie.',
'support_sender_support' => 'Wsparcie',
'support_sender_you' => 'Ty',
'support_ticket_closed' => 'To zgłoszenie jest zamknięte.',
'installer_register_label' => 'Zarejestruj instalację',
'installer_register_hint' => 'Umożliwia powiadomienia o aktualizacjach i wsparcie. Przesyłane są tylko dane techniczne (nazwa aplikacji, URL, wersja PHP, wersja aplikacji).',
'installer_license_label' => 'Klucz licencyjny (opcjonalnie)',
'installer_license_hint' => 'Można również wprowadzić później w ustawieniach.',
// Password Reset (Admin + Self-Service)
'settings_tab_maintenance' => 'Konserwacja',
'factory_reset_password_label' => 'Twoje hasło do potwierdzenia',
'factory_reset_confirmation_label' => 'Potwierdzenie bezpieczeństwa',
'factory_reset_confirmation_hint' => 'Wpisz RESET-BESTÄTIGT, aby potwierdzić operację.',
'password_reset_link_sent' => 'Link do resetowania hasła został wysłany e-mailem.',
'password_reset_email_label' => 'Szablon e-maila resetowania hasła',
'password_reset_email_hint' => 'Zmienne: {name} = Nazwa użytkownika, {link} = Link resetowania, {app_name} = Nazwa aplikacji',
'log_password_reset_requested' => 'Zażądano resetowania hasła',
'log_password_changed_self' => ':name zmienił hasło',
'log_dsgvo_viewed' => 'Dokument RODO użytkownika :name przeglądany',
// Multi-Language Legal Editor
'legal_language_label' => 'Język',
'legal_impressum_label' => 'Nota prawna',
'legal_datenschutz_label' => 'Polityka prywatności',
'legal_password_reset_email_label' => 'E-mail resetowania hasła',
// E-Mail Tab
'settings_tab_mail' => 'E-mail',
'mail_config_title' => 'Konfiguracja e-mail',
'mail_config_hint' => 'Ustawienia SMTP do wysyłania wiadomości e-mail (np. resetowanie hasła, powiadomienia).',
'mail_mailer_label' => 'Metoda wysyłki',
'mail_log_mode' => 'Brak wysyłki (Log)',
'mail_host_label' => 'Host SMTP',
'mail_port_label' => 'Port',
'mail_username_label' => 'Nazwa użytkownika',
'mail_password_label' => 'Hasło',
'mail_from_address_label' => 'Adres nadawcy',
'mail_from_name_label' => 'Nazwa nadawcy',
'mail_encryption_label' => 'Szyfrowanie',
'mail_encryption_none' => 'Brak',
'mail_save' => 'Zapisz ustawienia e-mail',
'mail_saved' => 'Ustawienia e-mail zostały zapisane.',
'mail_test_button' => 'Testuj połączenie',
'mail_testing' => 'Testowanie połączenia...',
'mail_test_success' => 'Połączenie SMTP udane!',
];

7
lang/pl/auth.php Executable file
View File

@@ -0,0 +1,7 @@
<?php
return [
'failed' => 'Podane dane logowania są nieprawidłowe.',
'password' => 'Podane hasło jest nieprawidłowe.',
'throttle' => 'Zbyt wiele prób logowania. Spróbuj ponownie za :seconds sekund.',
];

34
lang/pl/auth_ui.php Executable file
View File

@@ -0,0 +1,34 @@
<?php
return [
'login_title' => 'Logowanie',
'email_label' => 'E-mail',
'password_label' => 'Hasło',
'remember_me' => 'Zapamiętaj mnie',
'login_button' => 'Zaloguj',
'register_title' => 'Rejestracja',
'name_label' => 'Imię',
'children_assigned' => 'Twoje konto zostanie przypisane do następujących dzieci:',
'password_min' => '(min. 8 znaków)',
'password_confirm_label' => 'Potwierdź hasło',
'create_account' => 'Utwórz konto',
'already_registered' => 'Masz już konto?',
'go_to_login' => 'Zaloguj się',
'email_fixed_by_invitation' => 'Adres e-mail jest określony przez zaproszenie.',
'invalid_invitation' => 'Ten link zaproszenia jest nieprawidłowy lub wygasł.',
'welcome' => 'Witamy! Twoje konto zostało utworzone.',
'forgot_password_link' => 'Zapomniałeś hasła?',
'forgot_password_title' => 'Resetowanie hasła',
'forgot_password_description' => 'Podaj swój adres e-mail, a wyślemy Ci link do zresetowania hasła.',
'send_reset_link' => 'Wyślij link',
'back_to_login' => 'Powrót do logowania',
'reset_password_title' => 'Ustaw nowe hasło',
'reset_password_button' => 'Zresetuj hasło',
'new_password_label' => 'Nowe hasło',
'confirm_password_label' => 'Potwierdź hasło',
'login_failed' => 'Dane logowania są nieprawidłowe.',
'email_must_match_invitation' => 'Adres e-mail musi odpowiadać zaproszeniu: :email',
'cookie_notice' => 'Ta strona używa tylko technicznie niezbędnego pliku cookie sesji. Bez śledzenia.',
'cookie_notice_link' => 'Dowiedz się więcej',
'account_deactivated' => 'Twoje konto zostało dezaktywowane. Skontaktuj się z administratorem.',
];

64
lang/pl/events.php Executable file
View File

@@ -0,0 +1,64 @@
<?php
return [
'title' => 'Terminy',
'no_events' => 'Nie znaleziono terminów.',
'no_upcoming' => 'Brak nadchodzących terminów.',
'upcoming_title' => 'Nadchodzące terminy',
'cancelled_label' => 'Odwołany',
'draft_label' => 'Szkic',
'cancelled_banner' => 'Ten termin został odwołany.',
'draft_banner' => 'Szkic — widoczny tylko dla administratorów.',
'back_to_list' => 'Powrót do listy terminów',
'description' => 'Opis',
'plan_route' => 'Zaplanuj trasę',
'start_navigation' => 'Rozpocznij nawigację',
'participants' => 'Uczestnicy',
'confirmations' => 'Potwierdzenia',
'rejections' => 'Odmowy',
'open_responses' => 'Otwarte',
'participation_updated' => 'Uczestnictwo zaktualizowane.',
'catering' => 'Catering / Wyżywienie',
'bring_something' => 'Przyniosę coś',
'bring_nothing' => 'Nie przynoszę niczego',
'catering_note_placeholder' => 'np. Przyniosę ciasto',
'catering_updated' => 'Status cateringu zaktualizowany.',
'no_catering_yet' => 'Brak potwierdzeń dotyczących wyżywienia.',
'timekeeper' => 'Chronometrażysta',
'timekeeper_yes' => 'Tak, mogę',
'timekeeper_no' => 'Nie',
'catering_short' => 'Catering',
'timekeeper_short' => 'Sędzia czasu',
'no_timekeeper_yet' => 'Brak przypisanego chronometrażysty.',
'timekeeper_updated' => 'Status chronometrażysty zaktualizowany.',
'comments' => 'Komentarze',
'comment_placeholder' => 'Napisz komentarz...',
'no_comments' => 'Brak komentarzy.',
'comment_deleted' => '[Usunięty]',
'confirm_delete_comment' => 'Usunąć komentarz?',
'comment_added' => 'Komentarz dodany.',
'comment_removed' => 'Komentarz usunięty.',
'hello_user' => 'Cześć, :name!',
'upcoming_events' => 'Nadchodzące terminy',
'calendar' => 'Kalendarz',
'today' => 'Dziś',
'month_view' => 'Miesiąc',
'year_view' => 'Rok',
// Pliki
'files' => 'Pliki',
'download' => 'Pobierz',
'no_files' => 'Brak dołączonych plików.',
// Przeciwnik i wynik
'opponent' => 'Przeciwnik',
'score' => 'Wynik',
'score_home' => 'Gospodarze',
'score_away' => 'Goście',
'vs' => 'vs.',
// Staff visibility
'signed_up' => 'zapisany',
'withdrawn' => 'wypisany',
'deleted_label' => 'usunięty',
];

6
lang/pl/pagination.php Executable file
View File

@@ -0,0 +1,6 @@
<?php
return [
'previous' => '&laquo; Wstecz',
'next' => 'Dalej &raquo;',
];

14
lang/pl/passwords.php Executable file
View File

@@ -0,0 +1,14 @@
<?php
return [
'reset' => 'Twoje hasło zostało zresetowane.',
'sent' => 'Wysłaliśmy Ci link do resetowania hasła.',
'throttled' => 'Poczekaj przed ponowną próbą.',
'token' => 'Token resetowania hasła jest nieprawidłowy.',
'user' => 'Nie znaleziono użytkownika z tym adresem e-mail.',
'reset_subject' => 'Resetowanie hasła — :app',
'reset_greeting' => 'Witaj :name,',
'reset_line1' => 'Otrzymujesz tę wiadomość, ponieważ złożono prośbę o zresetowanie hasła.',
'reset_line2' => 'Ten link do resetowania hasła wygaśnie za :count minut.',
'reset_line3' => 'Jeśli nie prosiłeś o resetowanie hasła, zignoruj tę wiadomość.',
];

44
lang/pl/profile.php Executable file
View File

@@ -0,0 +1,44 @@
<?php
return [
'title' => 'Mój profil',
'name_label' => 'Imię',
'email_label' => 'E-mail',
'email_readonly' => 'Adres e-mail nie może zostać zmieniony.',
'phone_label' => 'Telefon (komórkowy)',
'role_label' => 'Rola',
'language_label' => 'Język',
'my_children' => 'Moje dzieci',
'updated' => 'Profil zaktualizowany.',
// Zdjęcie profilowe
'profile_picture' => 'Zdjęcie profilowe',
'upload_picture' => 'Prześlij zdjęcie',
'remove_picture' => 'Usuń zdjęcie',
'max_picture_size' => 'Maks. 2 MB (JPG, PNG, GIF, WEBP)',
// Zgoda RODO
'dsgvo_title' => 'Zgoda RODO',
'dsgvo_description' => 'Prześlij tutaj podpisaną zgodę jako zdjęcie lub PDF. Jedna zgoda obowiązuje dla obojga rodziców wspólnie.',
'dsgvo_upload' => 'Prześlij zgodę',
'dsgvo_replace' => 'Zastąp',
'dsgvo_remove' => 'Usuń zgodę',
'dsgvo_file_hint' => 'PDF lub obraz (maks. 10 MB)',
'dsgvo_uploaded' => 'Zgoda została przesłana.',
'dsgvo_removed' => 'Zgoda została usunięta.',
'dsgvo_view' => 'Podgląd',
'dsgvo_confirmed' => 'Potwierdzone',
'dsgvo_pending' => 'Oczekiwanie na potwierdzenie przez admina/trenera',
'dsgvo_confirmed_by' => 'Potwierdzone przez :name dnia :date',
'dsgvo_confirm_remove' => 'Czy na pewno usunąć zgodę? Istniejące potwierdzenie zostanie również zresetowane.',
// Usuwanie konta
'danger_zone' => 'Strefa zagrożenia',
'delete_account' => 'Usuń konto',
'delete_account_hint' => 'Twój profil zostanie dezaktywowany i może być przywrócony przez administratora w ciągu 7 dni. Dane historyczne (komentarze, uczestnictwo) zostaną zachowane.',
'delete_warning_children' => 'Uwaga: Jesteś jedynym rodzicem następujących dzieci. Zostaną one również dezaktywowane:',
'delete_confirm' => 'Czy na pewno chcesz usunąć swoje konto? Może to cofnąć tylko administrator.',
'account_deleted' => 'Twoje konto zostało usunięte.',
'cannot_delete_admin' => 'Konto administratora nie może zostać usunięte.',
'cannot_delete_staff' => 'Trenerzy i administratorzy nie mogą usunąć konta przez stronę profilu.',
];

109
lang/pl/ui.php Executable file
View File

@@ -0,0 +1,109 @@
<?php
return [
'dashboard' => 'Panel',
'events' => 'Terminy',
'admin' => 'Admin',
'profile' => 'Profil',
'logout' => 'Wyloguj',
'back_to_app' => 'Do aplikacji',
'login' => 'Zaloguj',
'save' => 'Zapisz',
'cancel' => 'Anuluj',
'edit' => 'Edytuj',
'delete' => 'Usuń',
'create' => 'Utwórz',
'filter' => 'Filtruj',
'send' => 'Wyślij',
'back' => 'Wstecz',
'yes' => 'Tak',
'no' => 'Nie',
'open' => 'Otwarte',
'all_teams' => 'Wszystkie drużyny',
'all_types' => 'Wszystkie typy',
'upcoming' => 'Nadchodzące',
'past' => 'Minione',
'period' => 'Okres',
'team' => 'Drużyna',
'type' => 'Typ',
'name' => 'Imię',
'email' => 'E-mail',
'password' => 'Hasło',
'role' => 'Rola',
'language' => 'Język',
'impressum' => 'Impressum',
'privacy' => 'Polityka prywatności',
'no_entries' => 'Brak wpisów.',
'clock' => '',
'date_format' => 'D, d.m.Y, H:i',
'date_format_long' => 'l, d. F Y, H:i',
'date_format_short' => 'd.m.Y H:i',
'date_format_date' => 'd.m.Y',
'footer_impressum' => 'Impressum',
'footer_privacy' => 'Polityka prywatności',
'pwa_install_title' => 'Zainstaluj aplikację',
'pwa_install_text' => 'Dodaj aplikację do ekranu głównego, aby mieć szybki dostęp.',
'pwa_install_btn' => 'Zainstaluj',
'pwa_ios_steps' => 'Kliknij <strong>⋯</strong> (Menu), potem <strong>⬆</strong> (Udostępnij) i wybierz „Dodaj do ekranu głównego".',
'error_403_title' => 'Brak dostępu',
'error_403_text' => 'Nie masz uprawnień do wyświetlenia tej strony.',
'error_404_title' => 'Nie znaleziono strony',
'error_404_text' => 'Żądana strona nie została znaleziona.',
'error_500_title' => 'Błąd serwera',
'error_500_text' => 'Wystąpił błąd wewnętrzny. Spróbuj ponownie później.',
'back_to_dashboard' => 'Do panelu',
'enums' => [
'event_type' => [
'home_game' => 'Mecz u siebie',
'away_game' => 'Mecz wyjazdowy',
'training' => 'Trening',
'tournament' => 'Turniej',
'meeting' => 'Zebranie',
'other' => 'Inne',
],
'event_status' => [
'published' => 'Opublikowany',
'cancelled' => 'Odwołany',
'draft' => 'Szkic',
],
'participant_status' => [
'yes' => 'Potwierdzony',
'no' => 'Odrzucony',
'unknown' => 'Otwarte',
],
'catering_status' => [
'yes' => 'Tak',
'no' => 'Nie',
'unknown' => 'Otwarte',
],
'user_role' => [
'admin' => 'Administrator',
'coach' => 'Trener',
'parent_rep' => 'Przedstawiciel rodziców',
'user' => 'Rodzic',
],
],
'locales' => [
'de' => 'Deutsch',
'en' => 'English',
'pl' => 'Polski',
'ru' => 'Русский',
'ar' => 'العربية',
'tr' => 'Türkçe',
],
// Baner RODO
'dsgvo_banner_title' => 'Wymagana zgoda RODO',
'dsgvo_banner_text' => 'Do korzystania z tej aplikacji wymagana jest podpisana deklaracja zgody RODO. Prześlij deklarację jako zdjęcie lub PDF w swoim profilu. Aplikacja może być w pełni używana dopiero po przesłaniu.',
'dsgvo_banner_action' => 'Prześlij teraz w profilu',
'dsgvo_banner_pending_title' => 'Zgoda jest weryfikowana',
'dsgvo_banner_pending_text' => 'Twoja deklaracja zgody RODO została przesłana i jest weryfikowana. Do czasu potwierdzenia przez administratora aplikacja działa w trybie tylko do odczytu — uczestnictwo, catering, obsługa czasu i komentarze są zablokowane.',
'dsgvo_restricted' => 'Twoja deklaracja zgody RODO nie została jeszcze potwierdzona. Poczekaj na zatwierdzenie przez administratora.',
'dsgvo_restricted_hint' => 'Zgoda RODO niepotwierdzona — działania zablokowane.',
// Pliki
'files' => 'Pliki',
'download' => 'Pobierz',
'all' => 'Wszystkie',
'close' => 'Zamknij',
];

130
lang/pl/validation.php Executable file
View File

@@ -0,0 +1,130 @@
<?php
return [
'accepted' => 'Pole :attribute musi zostać zaakceptowane.',
'active_url' => 'Pole :attribute nie jest prawidłowym adresem URL.',
'after' => 'Pole :attribute musi być datą późniejszą niż :date.',
'after_or_equal' => 'Pole :attribute musi być datą nie wcześniejszą niż :date.',
'alpha' => 'Pole :attribute może zawierać tylko litery.',
'alpha_dash' => 'Pole :attribute może zawierać tylko litery, cyfry, myślniki i podkreślenia.',
'alpha_num' => 'Pole :attribute może zawierać tylko litery i cyfry.',
'array' => 'Pole :attribute musi być tablicą.',
'before' => 'Pole :attribute musi być datą wcześniejszą niż :date.',
'before_or_equal' => 'Pole :attribute musi być datą nie późniejszą niż :date.',
'between' => [
'numeric' => 'Pole :attribute musi mieścić się między :min a :max.',
'file' => 'Pole :attribute musi mieć od :min do :max kilobajtów.',
'string' => 'Pole :attribute musi mieć od :min do :max znaków.',
'array' => 'Pole :attribute musi mieć od :min do :max elementów.',
],
'boolean' => 'Pole :attribute musi mieć wartość prawda lub fałsz.',
'confirmed' => 'Potwierdzenie pola :attribute nie jest zgodne.',
'date' => 'Pole :attribute nie jest prawidłową datą.',
'date_equals' => 'Pole :attribute musi być datą równą :date.',
'date_format' => 'Pole :attribute nie odpowiada formatowi :format.',
'different' => 'Pola :attribute i :other muszą się różnić.',
'digits' => 'Pole :attribute musi mieć :digits cyfr.',
'digits_between' => 'Pole :attribute musi mieć od :min do :max cyfr.',
'email' => 'Pole :attribute musi być prawidłowym adresem e-mail.',
'exists' => 'Wybrana wartość dla :attribute jest nieprawidłowa.',
'file' => 'Pole :attribute musi być plikiem.',
'filled' => 'Pole :attribute musi mieć wartość.',
'gt' => [
'numeric' => 'Pole :attribute musi być większe niż :value.',
'file' => 'Pole :attribute musi być większe niż :value kilobajtów.',
'string' => 'Pole :attribute musi mieć więcej niż :value znaków.',
'array' => 'Pole :attribute musi mieć więcej niż :value elementów.',
],
'gte' => [
'numeric' => 'Pole :attribute musi być większe lub równe :value.',
'file' => 'Pole :attribute musi mieć co najmniej :value kilobajtów.',
'string' => 'Pole :attribute musi mieć co najmniej :value znaków.',
'array' => 'Pole :attribute musi mieć co najmniej :value elementów.',
],
'image' => 'Pole :attribute musi być obrazem.',
'in' => 'Wybrana wartość dla :attribute jest nieprawidłowa.',
'in_array' => 'Pole :attribute nie istnieje w :other.',
'integer' => 'Pole :attribute musi być liczbą całkowitą.',
'ip' => 'Pole :attribute musi być prawidłowym adresem IP.',
'json' => 'Pole :attribute musi być prawidłowym ciągiem JSON.',
'lt' => [
'numeric' => 'Pole :attribute musi być mniejsze niż :value.',
'file' => 'Pole :attribute musi być mniejsze niż :value kilobajtów.',
'string' => 'Pole :attribute musi mieć mniej niż :value znaków.',
'array' => 'Pole :attribute musi mieć mniej niż :value elementów.',
],
'lte' => [
'numeric' => 'Pole :attribute musi być mniejsze lub równe :value.',
'file' => 'Pole :attribute musi mieć co najwyżej :value kilobajtów.',
'string' => 'Pole :attribute może mieć co najwyżej :value znaków.',
'array' => 'Pole :attribute może mieć co najwyżej :value elementów.',
],
'max' => [
'numeric' => 'Pole :attribute nie może być większe niż :max.',
'file' => 'Pole :attribute nie może być większe niż :max kilobajtów.',
'string' => 'Pole :attribute nie może mieć więcej niż :max znaków.',
'array' => 'Pole :attribute nie może mieć więcej niż :max elementów.',
],
'min' => [
'numeric' => 'Pole :attribute musi wynosić co najmniej :min.',
'file' => 'Pole :attribute musi mieć co najmniej :min kilobajtów.',
'string' => 'Pole :attribute musi mieć co najmniej :min znaków.',
'array' => 'Pole :attribute musi mieć co najmniej :min elementów.',
],
'not_in' => 'Wybrana wartość dla :attribute jest nieprawidłowa.',
'numeric' => 'Pole :attribute musi być liczbą.',
'present' => 'Pole :attribute musi być obecne.',
'regex' => 'Pole :attribute ma nieprawidłowy format.',
'required' => 'Pole :attribute jest wymagane.',
'required_if' => 'Pole :attribute jest wymagane, gdy :other ma wartość :value.',
'required_unless' => 'Pole :attribute jest wymagane, chyba że :other ma wartość :values.',
'required_with' => 'Pole :attribute jest wymagane, gdy :values jest obecne.',
'required_with_all' => 'Pole :attribute jest wymagane, gdy :values są obecne.',
'required_without' => 'Pole :attribute jest wymagane, gdy :values nie jest obecne.',
'required_without_all' => 'Pole :attribute jest wymagane, gdy żadne z :values nie jest obecne.',
'same' => 'Pola :attribute i :other muszą być zgodne.',
'size' => [
'numeric' => 'Pole :attribute musi wynosić :size.',
'file' => 'Pole :attribute musi mieć :size kilobajtów.',
'string' => 'Pole :attribute musi mieć :size znaków.',
'array' => 'Pole :attribute musi zawierać :size elementów.',
],
'string' => 'Pole :attribute musi być ciągiem znaków.',
'timezone' => 'Pole :attribute musi być prawidłową strefą czasową.',
'unique' => 'Taka wartość pola :attribute już istnieje.',
'url' => 'Pole :attribute musi być prawidłowym adresem URL.',
'password' => [
'letters' => ':attribute musi zawierać co najmniej jedną literę.',
'mixed' => ':attribute musi zawierać co najmniej jedną wielką i jedną małą literę.',
'numbers' => ':attribute musi zawierać co najmniej jedną cyfrę.',
'symbols' => ':attribute musi zawierać co najmniej jeden znak specjalny.',
'uncompromised' => ':attribute pojawił się w wycieku danych. Proszę wybrać inne hasło.',
],
'attributes' => [
'name' => 'Imię',
'email' => 'E-mail',
'password' => 'Hasło',
'password_confirmation' => 'Potwierdzenie hasła',
'title' => 'Tytuł',
'body' => 'Treść',
'type' => 'Typ',
'status' => 'Status',
'team_id' => 'Drużyna',
'start_date' => 'Data',
'start_time' => 'Godzina',
'location_name' => 'Miejsce',
'address_text' => 'Adres',
'description_html' => 'Opis',
'first_name' => 'Imię',
'last_name' => 'Nazwisko',
'birth_year' => 'Rok urodzenia',
'jersey_number' => 'Numer na koszulce',
'note' => 'Notatka',
'season' => 'Sezon',
'player_id' => 'Zawodnik',
'parent_id' => 'Rodzic',
'relationship_label' => 'Relacja',
],
];