ff76855f29
- Create i18n utility module (app/utils/i18n.py) with translation loading, browser language detection, AI fallback, and l10n helpers - Add JSON translation files for EN, DE, FR, ES, IT, PT, NL, PL, ZH, RU - Add preferred_language column to UserProfile model with migration - Register _() translation function as Jinja2 global - Update base.html with translated navigation, footer, cookie notice - Add language selector dropdown in nav bar (desktop + mobile) - Create API endpoints for language preference (POST/GET /api/i18n/) - Support language detection: user profile > cookie > Accept-Language > default Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
191 lines
6.8 KiB
JSON
191 lines
6.8 KiB
JSON
{
|
|
"app.name": "DocuElevate",
|
|
|
|
"nav.dashboard": "Übersicht",
|
|
"nav.upload": "Hochladen",
|
|
"nav.files": "Dateien",
|
|
"nav.search": "Suche",
|
|
"nav.pipelines": "Pipelines",
|
|
"nav.integrations": "Integrationen",
|
|
"nav.help": "Hilfe",
|
|
"nav.notifications": "Benachrichtigungen",
|
|
"nav.pricing": "Preise",
|
|
"nav.about": "Über uns",
|
|
"nav.admin": "Admin",
|
|
"nav.settings": "Einstellungen",
|
|
"nav.users": "Benutzer",
|
|
"nav.plan_designer": "Tarifdesigner",
|
|
"nav.credentials": "Zugangsdaten",
|
|
"nav.file_manager": "Dateimanager",
|
|
"nav.duplicates": "Duplikate",
|
|
"nav.similarity": "Ähnlichkeit",
|
|
"nav.queue_monitor": "Warteschlange",
|
|
"nav.scheduled_jobs": "Geplante Aufgaben",
|
|
"nav.backup_restore": "Sicherung & Wiederherstellung",
|
|
"nav.status": "Status",
|
|
"nav.api_docs": "API-Dokumentation",
|
|
"nav.developer_docs": "Entwicklerdokumentation",
|
|
"nav.dark_mode": "Dunkelmodus",
|
|
"nav.light_mode": "Hellmodus",
|
|
"nav.toggle_dark_mode": "Dunkelmodus umschalten",
|
|
"nav.toggle_nav": "Navigationsmenü umschalten",
|
|
"nav.open_main_menu": "Hauptmenü öffnen",
|
|
"nav.skip_to_content": "Zum Hauptinhalt springen",
|
|
"nav.main_navigation": "Hauptnavigation",
|
|
"nav.admin_menu": "Admin-Menü",
|
|
"nav.admin_actions": "Admin-Aktionen",
|
|
"nav.help_center": "Hilfezentrum",
|
|
|
|
"auth.login": "Anmelden",
|
|
"auth.logout": "Abmelden",
|
|
"auth.signup": "Registrieren",
|
|
"auth.my_account": "Mein Konto",
|
|
"auth.profile": "Profil",
|
|
|
|
"footer.copyright": "DocuElevate {year}",
|
|
"footer.privacy": "Datenschutz",
|
|
"footer.imprint": "Impressum",
|
|
"footer.terms": "AGB",
|
|
"footer.cookies": "Cookies",
|
|
"footer.license": "Lizenz",
|
|
"footer.attributions": "Danksagungen",
|
|
"footer.version": "Version {version}",
|
|
"footer.navigation": "Fußnavigation",
|
|
|
|
"cookie.notice": "DocuElevate verwendet nur wesentliche Sitzungscookies, die für die Authentifizierung und den Betrieb erforderlich sind. Es werden keine Tracking- oder Analysecookies verwendet.",
|
|
"cookie.policy_link": "Cookie-Richtlinie",
|
|
"cookie.privacy_link": "Datenschutzhinweis",
|
|
"cookie.accept": "Verstanden",
|
|
"cookie.notice_label": "Cookie-Hinweis",
|
|
|
|
"common.save": "Speichern",
|
|
"common.cancel": "Abbrechen",
|
|
"common.delete": "Löschen",
|
|
"common.edit": "Bearbeiten",
|
|
"common.close": "Schließen",
|
|
"common.confirm": "Bestätigen",
|
|
"common.back": "Zurück",
|
|
"common.next": "Weiter",
|
|
"common.loading": "Wird geladen...",
|
|
"common.error": "Fehler",
|
|
"common.success": "Erfolg",
|
|
"common.warning": "Warnung",
|
|
"common.info": "Info",
|
|
"common.yes": "Ja",
|
|
"common.no": "Nein",
|
|
"common.search": "Suchen",
|
|
"common.filter": "Filter",
|
|
"common.reset": "Zurücksetzen",
|
|
"common.refresh": "Aktualisieren",
|
|
"common.download": "Herunterladen",
|
|
"common.actions": "Aktionen",
|
|
"common.details": "Details",
|
|
"common.name": "Name",
|
|
"common.description": "Beschreibung",
|
|
"common.type": "Typ",
|
|
"common.status": "Status",
|
|
"common.date": "Datum",
|
|
"common.size": "Größe",
|
|
"common.created": "Erstellt",
|
|
"common.updated": "Aktualisiert",
|
|
"common.enabled": "Aktiviert",
|
|
"common.disabled": "Deaktiviert",
|
|
"common.active": "Aktiv",
|
|
"common.inactive": "Inaktiv",
|
|
"common.all": "Alle",
|
|
"common.none": "Keine",
|
|
"common.select": "Auswählen",
|
|
"common.upload": "Hochladen",
|
|
"common.processing": "Wird verarbeitet",
|
|
"common.completed": "Abgeschlossen",
|
|
"common.failed": "Fehlgeschlagen",
|
|
"common.pending": "Ausstehend",
|
|
"common.retry": "Wiederholen",
|
|
"common.view": "Anzeigen",
|
|
"common.copy": "Kopieren",
|
|
"common.copied": "Kopiert!",
|
|
|
|
"language.selector": "Sprache",
|
|
"language.en": "English",
|
|
"language.de": "Deutsch",
|
|
"language.fr": "Français",
|
|
"language.es": "Español",
|
|
"language.it": "Italiano",
|
|
"language.pt": "Português",
|
|
"language.nl": "Nederlands",
|
|
"language.pl": "Polski",
|
|
"language.zh": "中文",
|
|
"language.ru": "Русский",
|
|
"language.changed": "Sprache geändert zu {language}",
|
|
|
|
"dashboard.title": "Übersicht",
|
|
"dashboard.total_files": "Dateien gesamt",
|
|
"dashboard.files_today": "Dateien heute",
|
|
"dashboard.files_this_month": "Dateien diesen Monat",
|
|
"dashboard.ocr_processed": "OCR verarbeitet",
|
|
"dashboard.active_integrations": "Aktive Integrationen",
|
|
"dashboard.storage_targets": "Speicherziele",
|
|
"dashboard.recent_activity": "Letzte Aktivität",
|
|
"dashboard.quick_actions": "Schnellaktionen",
|
|
"dashboard.welcome": "Willkommen bei DocuElevate",
|
|
|
|
"upload.title": "Dokument hochladen",
|
|
"upload.drag_drop": "Dateien hierher ziehen oder klicken zum Durchsuchen",
|
|
"upload.select_file": "Datei auswählen",
|
|
"upload.uploading": "Wird hochgeladen...",
|
|
"upload.success": "Datei erfolgreich hochgeladen",
|
|
"upload.error": "Hochladen fehlgeschlagen",
|
|
"upload.max_size": "Maximale Dateigröße: {size}",
|
|
|
|
"files.title": "Dateien",
|
|
"files.no_files": "Keine Dateien gefunden",
|
|
"files.filename": "Dateiname",
|
|
"files.document_title": "Dokumenttitel",
|
|
"files.uploaded": "Hochgeladen",
|
|
"files.file_size": "Dateigröße",
|
|
"files.ocr_status": "OCR-Status",
|
|
"files.tags": "Schlagwörter",
|
|
|
|
"search.title": "Dokumente suchen",
|
|
"search.placeholder": "Nach Dateiname, Inhalt, Schlagwörtern suchen...",
|
|
"search.no_results": "Keine Ergebnisse gefunden",
|
|
"search.results_count": "{count} Ergebnisse gefunden",
|
|
|
|
"settings.title": "Einstellungen",
|
|
"settings.save_success": "Einstellung erfolgreich gespeichert",
|
|
"settings.save_error": "Einstellung konnte nicht gespeichert werden",
|
|
"settings.reset_confirm": "Möchten Sie diese Einstellung wirklich zurücksetzen?",
|
|
|
|
"integrations.title": "Integrationen",
|
|
"integrations.connect": "Verbinden",
|
|
"integrations.disconnect": "Trennen",
|
|
"integrations.connected": "Verbunden",
|
|
"integrations.not_connected": "Nicht verbunden",
|
|
"integrations.configure": "Konfigurieren",
|
|
|
|
"pipelines.title": "Verarbeitungspipelines",
|
|
"pipelines.create": "Pipeline erstellen",
|
|
"pipelines.edit": "Pipeline bearbeiten",
|
|
|
|
"help.title": "Hilfezentrum",
|
|
"help.getting_started": "Erste Schritte",
|
|
"help.faq": "Häufig gestellte Fragen",
|
|
"help.documentation": "Dokumentation",
|
|
"help.support": "Support",
|
|
|
|
"error.not_found": "Seite nicht gefunden",
|
|
"error.not_found_message": "Die gesuchte Seite existiert nicht.",
|
|
"error.server_error": "Interner Serverfehler",
|
|
"error.server_error_message": "Etwas ist schiefgelaufen. Bitte versuchen Sie es später erneut.",
|
|
"error.unauthorized": "Nicht autorisiert",
|
|
"error.unauthorized_message": "Sie müssen sich anmelden, um auf diese Seite zuzugreifen.",
|
|
"error.forbidden": "Zugriff verweigert",
|
|
"error.forbidden_message": "Sie haben keine Berechtigung, auf diese Seite zuzugreifen.",
|
|
|
|
"notifications.title": "Benachrichtigungen",
|
|
"notifications.mark_read": "Als gelesen markieren",
|
|
"notifications.mark_all_read": "Alle als gelesen markieren",
|
|
"notifications.no_notifications": "Keine Benachrichtigungen",
|
|
"notifications.unread_count": "{count} ungelesene Benachrichtigungen"
|
|
}
|