mirror of
https://github.com/mauriceboe/TREK.git
synced 2026-06-21 06:11:45 +00:00
459b092e28
The "How to Update" modal always rendered Docker commands and claimed the instance runs in Docker, even on bare-metal / LXC installs like Proxmox Community Scripts. It now branches on the is_docker flag the backend already returns: non-Docker installs get a generic "re-run your install method" note plus a link to the update guide. Docker stays the default when the flag is absent, so existing installs are unaffected.
362 lines
23 KiB
TypeScript
362 lines
23 KiB
TypeScript
import type { TranslationStrings } from '../types';
|
|
|
|
const admin: TranslationStrings = {
|
|
'admin.smtp.title': 'E-maile i powiadomienia',
|
|
'admin.smtp.hint': 'Konfiguracja SMTP dla powiadomień e-mail. Opcjonalnie: URL Webhooka dla Discorda, Slacka, itp.',
|
|
'admin.smtp.testButton': 'Wyślij testowego e-maila',
|
|
'admin.smtp.testSuccess': 'Testowy e-mail został wysłany pomyślnie',
|
|
'admin.smtp.testFailed': 'Nie udało się wysłać testowego e-maila',
|
|
'admin.title': 'Administracja',
|
|
'admin.subtitle': 'Zarządzanie użytkownikami i ustawienia systemowe',
|
|
'admin.tabs.users': 'Użytkownicy',
|
|
'admin.tabs.categories': 'Kategorie',
|
|
'admin.tabs.backup': 'Backupy',
|
|
'admin.tabs.notifications': 'Powiadomienia',
|
|
'admin.tabs.audit': 'Audit',
|
|
'admin.stats.users': 'Użytkownicy',
|
|
'admin.stats.trips': 'Podróże',
|
|
'admin.stats.places': 'Miejsca',
|
|
'admin.stats.photos': 'Zdjęcia',
|
|
'admin.stats.files': 'Pliki',
|
|
'admin.table.user': 'Użytkownik',
|
|
'admin.table.email': 'E-mail',
|
|
'admin.table.role': 'Rola',
|
|
'admin.table.created': 'Utworzono',
|
|
'admin.table.lastLogin': 'Ostatnie logowanie',
|
|
'admin.table.actions': 'Akcje',
|
|
'admin.you': '(Ty)',
|
|
'admin.editUser': 'Edytuj użytkownika',
|
|
'admin.newPassword': 'Nowe hasło',
|
|
'admin.newPasswordHint': 'Pozostaw puste, aby zachować obecne hasło',
|
|
'admin.deleteUser': 'Usunąć użytkownika "{name}"? Wszystkie jego podróże zostaną trwale usunięte.',
|
|
'admin.deleteUserTitle': 'Usuń użytkownika',
|
|
'admin.newPasswordPlaceholder': 'Podaj nowe hasło...',
|
|
'admin.toast.loadError': 'Nie udało się załadować danych administratora',
|
|
'admin.toast.userUpdated': 'Użytkownik został zaktualizowany',
|
|
'admin.toast.updateError': 'Nie udało się zaktualizować użytkownika',
|
|
'admin.toast.userDeleted': 'Użytkownik został usunięty',
|
|
'admin.toast.deleteError': 'Nie udało się usunąć użytkownika',
|
|
'admin.toast.cannotDeleteSelf': 'Nie można usunąć własnego konta',
|
|
'admin.toast.userCreated': 'Użytkownik został utworzony',
|
|
'admin.toast.createError': 'Nie udało się utworzyć użytkownika',
|
|
'admin.toast.fieldsRequired': 'Nazwa użytkownika, e-mail i hasło są wymagane',
|
|
'admin.createUser': 'Utwórz użytkownika',
|
|
'admin.invite.title': 'Linki zaproszeń',
|
|
'admin.invite.subtitle': 'Twórz jednorazowe linki do rejestracji',
|
|
'admin.invite.create': 'Utwórz link',
|
|
'admin.invite.createAndCopy': 'Utwórz i skopiuj',
|
|
'admin.invite.empty': 'Nie utworzono jeszcze żadnych linków zaproszeń',
|
|
'admin.invite.maxUses': 'Maksymalna liczba użyć',
|
|
'admin.invite.expiry': 'Wygasa po',
|
|
'admin.invite.uses': 'użycia',
|
|
'admin.invite.expiresAt': 'wygasa',
|
|
'admin.invite.createdBy': 'utworzone przez',
|
|
'admin.invite.active': 'Aktywny',
|
|
'admin.invite.expired': 'Wygasł',
|
|
'admin.invite.usedUp': 'Wykorzystany',
|
|
'admin.invite.copied': 'Link zaproszenia został skopiowany do schowka',
|
|
'admin.invite.copyLink': 'Skopiuj link',
|
|
'admin.invite.deleted': 'Link zaproszenia został usunięty',
|
|
'admin.invite.createError': 'Nie udało się utworzyć linku zaproszenia',
|
|
'admin.invite.deleteError': 'Nie udało się usunąć linku zaproszenia',
|
|
'admin.tabs.settings': 'Ustawienia',
|
|
'admin.allowRegistration': 'Zezwól na rejestrację',
|
|
'admin.allowRegistrationHint': 'Nowi użytkownicy mogą się rejestrować samodzielnie',
|
|
'admin.authMethods': 'Authentication Methods',
|
|
'admin.passwordLogin': 'Password Login',
|
|
'admin.passwordLoginHint': 'Allow users to sign in with email and password',
|
|
'admin.passwordRegistration': 'Password Registration',
|
|
'admin.passwordRegistrationHint': 'Allow new users to register with email and password',
|
|
'admin.oidcLogin': 'SSO Login',
|
|
'admin.oidcLoginHint': 'Allow users to sign in with SSO',
|
|
'admin.oidcRegistration': 'SSO Auto-Provisioning',
|
|
'admin.oidcRegistrationHint': 'Automatically create accounts for new SSO users',
|
|
'admin.envOverrideHint':
|
|
'Password login settings are controlled by the OIDC_ONLY environment variable and cannot be changed here.',
|
|
'admin.lockoutWarning': 'At least one login method must remain enabled',
|
|
'admin.requireMfa': 'Wymagaj uwierzytelniania dwuskładnikowego (2FA)',
|
|
'admin.requireMfaHint':
|
|
'Użytkownicy bez 2FA muszą ukończyć konfigurację w Ustawieniach zanim zaczną korzystać z aplikacji.',
|
|
'admin.apiKeys': 'Klucze API',
|
|
'admin.apiKeysHint':
|
|
'Opcjonalne. Umożliwiają pobieranie większej ilości danych o miejscach, takich jak zdjęcia i pogoda.',
|
|
'admin.mapsKey': 'Klucz Google Maps API',
|
|
'admin.mapsKeyHint': 'Wymagany do wyszukiwania miejsc. Uzyskaj go na console.cloud.google.com',
|
|
'admin.mapsKeyHintLong':
|
|
'Bez klucza API, OpenStreetMap jest wykorzystywany do wyszukiwania miejsc. Z kluczem API Google, zdjęcia, oceny i godziny otwarcia również mogą być pobierane. Uzyskaj go na console.cloud.google.com.',
|
|
'admin.recommended': 'Polecane',
|
|
'admin.weatherKey': 'Klucz OpenWeatherMap API',
|
|
'admin.weatherKeyHint': 'Do danych pogodowych. Uzyskaj go bezpłatnie na openweathermap.org',
|
|
'admin.validateKey': 'Testuj',
|
|
'admin.keyValid': 'Połączono',
|
|
'admin.keyInvalid': 'Niepoprawny',
|
|
'admin.keySaved': 'Klucze API zostały zapisane',
|
|
'admin.oidcTitle': 'Logowanie jednokrotne (OIDC)',
|
|
'admin.oidcSubtitle':
|
|
'Zezwól na logowanie za pomocą zewnętrznych dostawców, takich jak Google, Apple, Authentik lub Keycloak.',
|
|
'admin.oidcDisplayName': 'Wyświetlana nazwa',
|
|
'admin.oidcIssuer': 'URL wystawcy',
|
|
'admin.oidcIssuerHint': 'Adres URL wystawcy OpenID Connect dostawcy, np. https://accounts.google.com',
|
|
'admin.oidcSaved': 'Konfiguracja OIDC została zapisana',
|
|
'admin.oidcOnlyMode': 'Wyłącz uwierzytelnianie hasłem',
|
|
'admin.oidcOnlyModeHint':
|
|
'Po włączeniu dozwolone jest tylko logowanie jednokrotne. Logowanie i rejestracja za pomocą hasła są zablokowane.',
|
|
'admin.fileTypes': 'Dozwolone typy plików',
|
|
'admin.fileTypesHint': 'Ustaw, które typy plików mogą być przesyłane przez użytkowników.',
|
|
'admin.fileTypesFormat':
|
|
'Rozszerzenia oddzielone przecinkami (np. jpg,png,pdf,doc). Użyj * aby zezwolić na wszystkie typy.',
|
|
'admin.fileTypesSaved': 'Ustawienia typów plików zostały zapisane',
|
|
'admin.placesPhotos.title': 'Zdjęcia miejsc',
|
|
'admin.placesPhotos.subtitle':
|
|
'Pobiera zdjęcia z Google Places API. Wyłącz, aby zaoszczędzić limit API. Zdjęcia z Wikimedia nie są objęte.',
|
|
'admin.placesAutocomplete.title': 'Autouzupełnianie miejsc',
|
|
'admin.placesAutocomplete.subtitle':
|
|
'Używa Google Places API do sugestii wyszukiwania. Wyłącz, aby zaoszczędzić limit API.',
|
|
'admin.placesDetails.title': 'Szczegóły miejsca',
|
|
'admin.placesDetails.subtitle':
|
|
'Pobiera szczegółowe informacje o miejscu (godziny, ocena, strona) z Google Places API. Wyłącz, aby zaoszczędzić limit API.',
|
|
'admin.bagTracking.title': 'Kontrola bagażu',
|
|
'admin.bagTracking.subtitle': 'Włącz wagę i przypisywanie do toreb dla przedmiotów do pakowania',
|
|
'admin.collab.chat.title': 'Czat',
|
|
'admin.collab.chat.subtitle': 'Wiadomości w czasie rzeczywistym',
|
|
'admin.collab.notes.title': 'Notatki',
|
|
'admin.collab.notes.subtitle': 'Wspólne notatki i dokumenty',
|
|
'admin.collab.polls.title': 'Ankiety',
|
|
'admin.collab.polls.subtitle': 'Ankiety grupowe i głosowania',
|
|
'admin.collab.whatsnext.title': 'Co dalej',
|
|
'admin.collab.whatsnext.subtitle': 'Sugestie aktywności i następne kroki',
|
|
'admin.tabs.config': 'Personalizacja',
|
|
'admin.tabs.defaults': 'Domyślne ustawienia',
|
|
'admin.defaultSettings.title': 'Domyślne ustawienia użytkownika',
|
|
'admin.defaultSettings.description':
|
|
'Ustaw domyślne wartości dla całej instancji. Użytkownicy, którzy nie zmienili ustawienia, zobaczą te wartości. Ich własne zmiany zawsze mają pierwszeństwo.',
|
|
'admin.defaultSettings.saved': 'Domyślne zapisane',
|
|
'admin.defaultSettings.reset': 'Przywróć wbudowaną wartość domyślną',
|
|
'admin.defaultSettings.resetToBuiltIn': 'przywróć',
|
|
'admin.tabs.templates': 'Szablony pakowania',
|
|
'admin.packingTemplates.title': 'Szablony pakowania',
|
|
'admin.packingTemplates.subtitle': 'Twórz szablony list pakowania do wielokrotnego użycia dla swoich podróży',
|
|
'admin.packingTemplates.create': 'Nowy szablon',
|
|
'admin.packingTemplates.namePlaceholder': 'Nazwa szablonu (np. Wakacje na plaży)',
|
|
'admin.packingTemplates.empty': 'Nie utworzono jeszcze żadnych szablonów',
|
|
'admin.packingTemplates.items': 'przedmiotów',
|
|
'admin.packingTemplates.categories': 'kategorie',
|
|
'admin.packingTemplates.itemName': 'Nazwa przedmiotu',
|
|
'admin.packingTemplates.itemCategory': 'Kategoria',
|
|
'admin.packingTemplates.categoryName': 'Nazwa kategorii (np. Ubrania)',
|
|
'admin.packingTemplates.addCategory': 'Dodaj kategorię',
|
|
'admin.packingTemplates.created': 'Szablon został utworzony',
|
|
'admin.packingTemplates.deleted': 'Szablon został usunięty',
|
|
'admin.packingTemplates.loadError': 'Nie udało się załadować szablonów',
|
|
'admin.packingTemplates.createError': 'Nie udało się utworzyć szablonu',
|
|
'admin.packingTemplates.deleteError': 'Nie udało się usunąć szablonu',
|
|
'admin.packingTemplates.saveError': 'Nie udało się zapisać szablonu',
|
|
'admin.tabs.addons': 'Dodatki',
|
|
'admin.addons.title': 'Dodatki',
|
|
'admin.addons.subtitle': 'Włączaj lub wyłączaj funkcje, aby dostosować swoje doświadczenie w TREK.',
|
|
'admin.addons.catalog.packing.name': 'Listy',
|
|
'admin.addons.catalog.packing.description': 'Listy pakowania i zadania do wykonania dla Twoich podróży',
|
|
'admin.addons.catalog.budget.name': 'Budżet',
|
|
'admin.addons.catalog.budget.description': 'Śledź wydatki i planuj budżet podróży',
|
|
'admin.addons.catalog.documents.name': 'Dokumenty',
|
|
'admin.addons.catalog.documents.description': 'Przechowuj i zarządzaj dokumentami podróżnymi',
|
|
'admin.addons.catalog.vacay.name': 'Urlopy',
|
|
'admin.addons.catalog.vacay.description': 'Osobisty planer urlopu z widokiem kalendarza',
|
|
'admin.addons.catalog.atlas.name': 'Atlas',
|
|
'admin.addons.catalog.atlas.description': 'Mapa świata z odwiedzonymi krajami i statystykami podróży',
|
|
'admin.addons.catalog.collab.name': 'Współpraca',
|
|
'admin.addons.catalog.collab.description': 'Notatki w czasie rzeczywistym, ankiety i czat do planowania podróży',
|
|
'admin.addons.catalog.memories.name': 'Zdjęcia (Immich)',
|
|
'admin.addons.catalog.memories.description': 'Udostępniaj zdjęcia z podróży za pośrednictwem swojej instancji Immich',
|
|
'admin.addons.catalog.mcp.name': 'MCP',
|
|
'admin.addons.catalog.mcp.description': 'Model Context Protocol dla integracji asystenta AI',
|
|
'admin.addons.subtitleBefore': 'Włączaj lub wyłączaj funkcje, aby dostosować swoje doświadczenie w ',
|
|
'admin.addons.subtitleAfter': '.',
|
|
'admin.addons.enabled': 'Włączone',
|
|
'admin.addons.disabled': 'Wyłączone',
|
|
'admin.addons.type.trip': 'Podróż',
|
|
'admin.addons.type.global': 'Globalne',
|
|
'admin.addons.type.integration': 'Integracja',
|
|
'admin.addons.tripHint': 'Dostępne jako zakładka w każdej podróży',
|
|
'admin.addons.globalHint': 'Dostępne jako osobna sekcja w menu głównym',
|
|
'admin.addons.integrationHint': 'Usługi backendowe i integracje API bez dedykowanej strony',
|
|
'admin.addons.toast.updated': 'Dodatek został zaktualizowany',
|
|
'admin.addons.toast.error': 'Nie udało się zaktualizować dodatku',
|
|
'admin.addons.noAddons': 'Brak dostępnych dodatków',
|
|
'admin.weather.title': 'Dane pogodowe',
|
|
'admin.weather.badge': 'Od 24 marca 2026',
|
|
'admin.weather.description':
|
|
'TREK korzysta z Open-Meteo jako źródła danych pogodowych. Open-Meteo to darmowy, otwartoźródłowy serwis pogodowy — klucz API nie jest wymagany.',
|
|
'admin.weather.forecast': '16-dniowa prognoza',
|
|
'admin.weather.forecastDesc': 'Wcześniej 5 dni (OpenWeatherMap)',
|
|
'admin.weather.climate': 'Historyczne dane klimatyczne',
|
|
'admin.weather.climateDesc': 'Średnie z ostatnich 85 lat dla dni poza 16-dniową prognozą',
|
|
'admin.weather.requests': '10,000 zapytań / dzień',
|
|
'admin.weather.requestsDesc': 'Bezpłatnie, bez klucza API',
|
|
'admin.weather.locationHint':
|
|
'Pogoda jest określana na podstawie pierwszego miejsca z przypisanymi współrzędnymi w danym dniu. Jeśli do dnia nie przypisano żadnego miejsca, jako punkt odniesienia używane jest dowolne miejsce z listy.',
|
|
'admin.tabs.mcpTokens': 'Dostęp MCP',
|
|
'admin.mcpTokens.title': 'Dostęp MCP',
|
|
'admin.mcpTokens.subtitle': 'Zarządzaj sesjami OAuth i tokenami API dla wszystkich użytkowników',
|
|
'admin.mcpTokens.sectionTitle': 'Tokeny API',
|
|
'admin.mcpTokens.owner': 'Właściciel',
|
|
'admin.mcpTokens.tokenName': 'Nazwa tokenu',
|
|
'admin.mcpTokens.created': 'Utworzono',
|
|
'admin.mcpTokens.lastUsed': 'Ostatnio użyto',
|
|
'admin.mcpTokens.never': 'Nigdy',
|
|
'admin.mcpTokens.empty': 'Nie utworzono jeszcze żadnych tokenów MCP',
|
|
'admin.mcpTokens.deleteTitle': 'Usuń token',
|
|
'admin.mcpTokens.deleteMessage':
|
|
'Spowoduje to natychmiastowe unieważnienie tokenu. Użytkownik straci dostęp MCP przez ten token.',
|
|
'admin.mcpTokens.deleteSuccess': 'Token został usunięty',
|
|
'admin.mcpTokens.deleteError': 'Nie udało się usunąć tokenu',
|
|
'admin.mcpTokens.loadError': 'Nie udało się załadować tokenów',
|
|
'admin.oauthSessions.sectionTitle': 'Sesje OAuth',
|
|
'admin.oauthSessions.clientName': 'Klient',
|
|
'admin.oauthSessions.owner': 'Właściciel',
|
|
'admin.oauthSessions.scopes': 'Uprawnienia',
|
|
'admin.oauthSessions.created': 'Utworzono',
|
|
'admin.oauthSessions.empty': 'Brak aktywnych sesji OAuth',
|
|
'admin.oauthSessions.revokeTitle': 'Unieważnij sesję',
|
|
'admin.oauthSessions.revokeMessage': 'Ta sesja OAuth zostanie natychmiast unieważniona. Klient straci dostęp do MCP.',
|
|
'admin.oauthSessions.revokeSuccess': 'Sesja unieważniona',
|
|
'admin.oauthSessions.revokeError': 'Nie udało się unieważnić sesji',
|
|
'admin.oauthSessions.loadError': 'Nie udało się załadować sesji OAuth',
|
|
'admin.tabs.github': 'GitHub',
|
|
'admin.audit.subtitle':
|
|
'Zdarzenia związane z bezpieczeństwem i administracją (kopie zapasowe, użytkownicy, MFA, ustawienia).',
|
|
'admin.audit.empty': 'Brak zapisów w historii aktywności.',
|
|
'admin.audit.refresh': 'Odśwież',
|
|
'admin.audit.loadMore': 'Załaduj więcej',
|
|
'admin.audit.showing': '{count} załadowanych · {total} łącznie',
|
|
'admin.audit.col.time': 'Czas',
|
|
'admin.audit.col.user': 'Użytkownik',
|
|
'admin.audit.col.action': 'Akcja',
|
|
'admin.audit.col.resource': 'Zasób',
|
|
'admin.audit.col.ip': 'IP',
|
|
'admin.audit.col.details': 'Szczegóły',
|
|
'admin.github.title': 'Historia wydań',
|
|
'admin.github.subtitle': 'Najnowsze aktualizacje z {repo}',
|
|
'admin.github.latest': 'Najnowsze',
|
|
'admin.github.prerelease': 'Wersja testowa',
|
|
'admin.github.showDetails': 'Pokaż szczegóły',
|
|
'admin.github.hideDetails': 'Ukryj szczegóły',
|
|
'admin.github.loadMore': 'Załaduj więcej',
|
|
'admin.github.loading': 'Ładowanie...',
|
|
'admin.github.error': 'Nie udało się załadować wydań',
|
|
'admin.github.by': 'przez',
|
|
'admin.github.support': 'Pomóż mi rozwijać TREK',
|
|
'admin.update.available': 'Dostępna aktualizacja',
|
|
'admin.update.text': 'Dostępna jest wersja TREK {version}. Używasz {current}.',
|
|
'admin.update.button': 'Zobacz na GitHubie',
|
|
'admin.update.install': 'Zainstaluj aktualizację',
|
|
'admin.update.confirmTitle': 'Zainstalować aktualizację?',
|
|
'admin.update.confirmText':
|
|
'TREK zostanie zaktualizowany z {current} do {version}. Serwer zostanie automatycznie zrestartowany po zakończeniu.',
|
|
'admin.update.dataInfo':
|
|
'Wszystkie twoje dane (podróże, użytkownicy, klucze API, przesłane pliki, urlopy, Atlas, budżety) zostaną zachowane.',
|
|
'admin.update.warning': 'Aplikacja będzie niedostępna przez krótki czas podczas restartu.',
|
|
'admin.update.confirm': 'Zaktualizuj',
|
|
'admin.update.installing': 'Aktualizowanie...',
|
|
'admin.update.success': 'Aktualizacja zakończona! Serwer restartuje się...',
|
|
'admin.update.failed': 'Aktualizacja nie powiodła się',
|
|
'admin.update.backupHint': 'Zalecamy utworzenie kopii zapasowej przed aktualizacją.',
|
|
'admin.update.backupLink': 'Zrób kopię zapasową',
|
|
'admin.update.howTo': 'Jak zaktualizować',
|
|
'admin.update.dockerText':
|
|
'Twoja instancja TREK działa w Dockerze. Aby zaktualizować do {version}, uruchom następujące polecenia na swoim serwerze:',
|
|
'admin.update.nonDockerText':
|
|
'Ta instancja TREK nie działa w Dockerze. Aby zaktualizować do {version}, uruchom ponownie metodę instalacji lub aktualizacji, której użyłeś — na przykład w Proxmox Community Scripts uruchom aktualizację z konsoli LXC:',
|
|
'admin.update.wikiLink': 'Otwórz przewodnik aktualizacji',
|
|
'admin.update.reloadHint': 'Proszę odświeżyć stronę za kilka sekund.',
|
|
'admin.notifications.title': 'Powiadomienia',
|
|
'admin.notifications.hint': 'Wybierz jeden kanał powiadomień.',
|
|
'admin.notifications.none': 'Wyłączone',
|
|
'admin.notifications.email': 'E-mail (SMTP)',
|
|
'admin.notifications.webhook': 'Webhook',
|
|
'admin.notifications.save': 'Zapisz ustawienia powiadomień',
|
|
'admin.notifications.saved': 'Ustawienia powiadomień zapisane',
|
|
'admin.notifications.testWebhook': 'Wyślij testowy webhook',
|
|
'admin.notifications.testWebhookSuccess': 'Testowy webhook wysłany pomyślnie',
|
|
'admin.notifications.testWebhookFailed': 'Testowy webhook nie powiódł się',
|
|
'admin.notifications.emailPanel.title': 'Email (SMTP)',
|
|
'admin.notifications.webhookPanel.title': 'Webhook',
|
|
'admin.notifications.inappPanel.title': 'In-App',
|
|
'admin.notifications.inappPanel.hint':
|
|
'Powiadomienia w aplikacji są zawsze aktywne i nie można ich globalnie wyłączyć.',
|
|
'admin.notifications.adminWebhookPanel.title': 'Webhook admina',
|
|
'admin.notifications.adminWebhookPanel.hint':
|
|
'Ten webhook służy wyłącznie do powiadomień admina (np. alertów o nowych wersjach). Jest niezależny od webhooków użytkowników i wysyła automatycznie, gdy URL jest skonfigurowany.',
|
|
'admin.notifications.adminWebhookPanel.saved': 'URL webhooka admina zapisany',
|
|
'admin.notifications.adminWebhookPanel.testSuccess': 'Testowy webhook wysłany pomyślnie',
|
|
'admin.notifications.adminWebhookPanel.testFailed': 'Wysyłanie testowego webhooka nie powiodło się',
|
|
'admin.notifications.adminWebhookPanel.alwaysOnHint':
|
|
'Webhook admina wysyła automatycznie, gdy URL jest skonfigurowany',
|
|
'admin.notifications.ntfy': 'Ntfy',
|
|
'admin.ntfy.hint':
|
|
'Pozwala użytkownikom skonfigurować własne tematy ntfy dla powiadomień push. Ustaw domyślny serwer poniżej, aby wstępnie wypełnić ustawienia użytkownika.',
|
|
'admin.notifications.testNtfy': 'Wyślij testowe Ntfy',
|
|
'admin.notifications.testNtfySuccess': 'Testowe Ntfy wysłane pomyślnie',
|
|
'admin.notifications.testNtfyFailed': 'Wysyłanie testowego Ntfy nie powiodło się',
|
|
'admin.notifications.adminNtfyPanel.title': 'Admin Ntfy',
|
|
'admin.notifications.adminNtfyPanel.hint':
|
|
'Ten temat Ntfy jest używany wyłącznie do powiadomień admina (np. alertów o wersjach). Jest niezależny od tematów użytkowników i zawsze wysyła po skonfigurowaniu.',
|
|
'admin.notifications.adminNtfyPanel.serverLabel': 'URL serwera Ntfy',
|
|
'admin.notifications.adminNtfyPanel.serverHint':
|
|
'Używany również jako domyślny serwer dla powiadomień ntfy użytkowników. Pozostaw puste, aby użyć ntfy.sh. Użytkownicy mogą to nadpisać w swoich ustawieniach.',
|
|
'admin.notifications.adminNtfyPanel.serverPlaceholder': 'https://ntfy.sh',
|
|
'admin.notifications.adminNtfyPanel.topicLabel': 'Temat admina',
|
|
'admin.notifications.adminNtfyPanel.topicPlaceholder': 'trek-admin-alerts',
|
|
'admin.notifications.adminNtfyPanel.tokenLabel': 'Token dostępu (opcjonalne)',
|
|
'admin.notifications.adminNtfyPanel.tokenCleared': 'Token dostępu admina wyczyszczony',
|
|
'admin.notifications.adminNtfyPanel.saved': 'Ustawienia admin Ntfy zapisane',
|
|
'admin.notifications.adminNtfyPanel.test': 'Wyślij testowe Ntfy',
|
|
'admin.notifications.adminNtfyPanel.testSuccess': 'Testowe Ntfy wysłane pomyślnie',
|
|
'admin.notifications.adminNtfyPanel.testFailed': 'Wysyłanie testowego Ntfy nie powiodło się',
|
|
'admin.notifications.adminNtfyPanel.alwaysOnHint': 'Admin Ntfy zawsze wysyła po skonfigurowaniu tematu',
|
|
'admin.notifications.adminNotificationsHint':
|
|
'Skonfiguruj, które kanały dostarczają powiadomienia admina (np. alerty o wersjach). Webhook wysyła automatycznie, gdy ustawiony jest URL webhooka admina.',
|
|
'admin.notifications.tripReminders.title': 'Przypomnienia o podróżach',
|
|
'admin.notifications.tripReminders.hint':
|
|
'Wysyła powiadomienie z przypomnieniem przed rozpoczęciem podróży (wymaga ustawienia dni przypomnienia dla podróży).',
|
|
'admin.notifications.tripReminders.enabled': 'Przypomnienia o podróżach włączone',
|
|
'admin.notifications.tripReminders.disabled': 'Przypomnienia o podróżach wyłączone',
|
|
'admin.webhook.hint':
|
|
'Pozwól użytkownikom konfigurować własne adresy URL webhooka dla powiadomień (Discord, Slack itp.).',
|
|
'admin.tabs.permissions': 'Uprawnienia',
|
|
'admin.addons.catalog.journey.name': 'Dziennik podróży',
|
|
'admin.addons.catalog.journey.description':
|
|
'Śledzenie podróży i dziennik z zameldowaniami, zdjęciami i codziennymi historiami',
|
|
'admin.passkey.title': 'Logowanie kluczem dostępu',
|
|
'admin.passkey.cardHint': 'Pozwól użytkownikom logować się kluczami dostępu (WebAuthn). Domyślnie wyłączone.',
|
|
'admin.passkey.login': 'Włącz logowanie kluczem dostępu',
|
|
'admin.passkey.loginHint':
|
|
'Pokaż opcję „Zaloguj się kluczem dostępu” i pozwól użytkownikom rejestrować klucze dostępu w swoich ustawieniach.',
|
|
'admin.passkey.notConfigured':
|
|
'Dla tego wdrożenia nie ustalono jeszcze żadnej domeny WebAuthn. Ustaw APP_URL lub Relying Party ID poniżej — do tego czasu klucze dostępu pozostaną ukryte.',
|
|
'admin.passkey.rpId': 'Relying Party ID (domena)',
|
|
'admin.passkey.rpIdHint':
|
|
'Sama domena, do której przypisane są klucze dostępu, np. trek.example.org. Pozostaw puste, aby wyprowadzić ją z APP_URL. Późniejsza zmiana unieważnia istniejące klucze dostępu.',
|
|
'admin.passkey.origins': 'Dozwolone origins',
|
|
'admin.passkey.originsHint':
|
|
'Pełne origins oddzielone przecinkami, np. https://trek.example.org. Pozostaw puste, aby użyć APP_URL.',
|
|
'admin.passkey.reset': 'Zresetuj klucze dostępu',
|
|
'admin.passkey.resetHint':
|
|
'Usuń wszystkie klucze dostępu tego użytkownika (np. po utracie urządzenia). Nadal będzie mógł logować się hasłem.',
|
|
'admin.passkey.resetConfirm': 'Usunąć wszystkie klucze dostępu dla {name}?',
|
|
'admin.passkey.resetDone': 'Usunięto {count} kluczy dostępu',
|
|
'admin.defaultSettings.mapProvider': 'Silnik map',
|
|
'admin.defaultSettings.mapProviderHint':
|
|
'Domyślna mapa dla wszystkich na tej instancji. Każdy użytkownik może ją zmienić we własnych ustawieniach.',
|
|
'admin.defaultSettings.providerLeaflet': 'Standardowa (bezpłatna)',
|
|
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
|
'admin.defaultSettings.mapboxToken': 'Współdzielony token Mapbox',
|
|
'admin.defaultSettings.mapboxTokenHint':
|
|
'Używany dla każdego użytkownika, który nie wprowadził własnego tokena — dzięki temu cała instancja korzysta z Mapbox bez udostępniania klucza każdemu z osobna. Przechowywany w postaci zaszyfrowanej.',
|
|
'admin.defaultSettings.mapboxStyle': 'Styl mapy',
|
|
'admin.defaultSettings.mapboxStylePlaceholder': 'Wybierz styl…',
|
|
'admin.defaultSettings.mapbox3d': 'Budynki i teren 3D',
|
|
'admin.defaultSettings.mapboxQuality': 'Tryb wysokiej jakości',
|
|
};
|
|
export default admin;
|