Files
fotospiel-app/resources/lang/de/admin.php

423 lines
15 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
return [
'nav' => [
'platform' => 'Plattform',
'library' => 'Bibliothek',
'content' => 'Inhalte',
'platform_management' => 'Plattformverwaltung',
'billing' => 'Billing & Finanzen',
'security' => 'Sicherheit',
],
'common' => [
'key' => 'Schlüssel',
'value' => 'Wert',
'locale' => 'Sprache',
'german' => 'Deutsch',
'english' => 'Englisch',
'import' => 'Import',
'import_csv' => 'CSV importieren',
'download_csv_template' => 'CSVVorlage herunterladen',
'csv_file' => 'CSVDatei',
'close' => 'Schließen',
'hash' => '#',
'slug' => 'Slug',
'event' => 'Veranstaltung',
'tenant' => 'Mandant',
'uploads' => 'Uploads',
'uploads_today' => 'Uploads heute',
'thumb' => 'Vorschau',
'likes' => 'Gefällt mir',
'emotion' => 'Emotion',
'event_type' => 'Eventtyp',
'last_activity' => 'Letzte Aktivität',
'credits' => 'Credits',
'settings' => 'Einstellungen',
'join' => 'Beitreten',
'unnamed' => 'Ohne Namen',
'from' => 'Von',
'until' => 'Bis',
],
'photos' => [
'fields' => [
'event' => 'Veranstaltung',
'photo' => 'Foto',
'is_featured' => 'Hervorgehoben',
'metadata' => 'Metadaten',
'likes' => 'Gefällt mir',
],
'actions' => [
'feature' => 'Hervorheben',
'unfeature' => 'Hervorhebung entfernen',
'feature_selected' => 'Auswahl hervorheben',
'unfeature_selected' => 'Hervorhebung der Auswahl entfernen',
],
'table' => [
'photo' => 'Foto',
'event' => 'Veranstaltung',
'likes' => 'Gefällt mir',
],
],
'events' => [
'fields' => [
'tenant' => 'Mandant',
'name' => 'Eventname',
'slug' => 'Slug',
'date' => 'Eventdatum',
'type' => 'Eventtyp',
'default_locale' => 'Standardsprache',
'is_active' => 'Aktiv',
'settings' => 'Einstellungen',
],
'table' => [
'tenant' => 'Mandant',
'join' => 'Beitreten',
'join_tokens_total' => 'Einladungen: :count',
'join_tokens_missing' => 'Noch keine Einladungen erstellt',
],
'actions' => [
'toggle_active' => 'Aktiv umschalten',
'join_link_qr' => 'Einladungslink & QR',
'download_photos' => 'Alle Fotos herunterladen',
],
'modal' => [
'join_link_heading' => 'Einladungslink der Veranstaltung',
],
'messages' => [
'join_link_copied' => 'Einladungslink kopiert',
],
'join_link' => [
'event_label' => 'Veranstaltung',
'deprecated_notice' => 'Der direkte Zugriff über den Event-Slug :slug wurde deaktiviert. Teile die Einladungslinks unten oder öffne in der Admin-App „QR & Einladungen“, um neue Codes zu verwalten.',
'open_admin' => 'Admin-App öffnen',
'link_label' => 'Einladungslink',
'copy_link' => 'Kopieren',
'no_tokens' => 'Noch keine Einladungen vorhanden. Erstelle im Admin-Bereich eine Einladung, um dein Event zu teilen.',
'token_default' => 'Einladung #:id',
'token_usage' => 'Nutzung: :usage / :limit',
'token_active' => 'Aktiv',
'token_inactive' => 'Deaktiviert',
'qr_code_label' => 'QRCode',
'note_html' => 'Hinweis: Der QRCode wird über einen externen QRService generiert. Für eine selbst gehostete Lösung können wir später eine interne QRGenerierung ergänzen.',
'layouts_heading' => 'Drucklayouts',
'layouts_fallback' => 'Layout-Übersicht öffnen',
'token_expiry' => 'Läuft ab am :date',
],
'analytics' => [
'success_total' => 'Erfolgreiche Zugriffe',
'failure_total' => 'Fehlgeschlagene Zugriffe',
'rate_limited_total' => 'Rate-Limit erreicht',
'recent_24h' => 'Aufrufe (24h)',
'last_seen_at' => 'Letzte Aktivität: :date',
],
],
'legal_pages' => [
'fields' => [
'slug' => 'Slug',
'title_localized' => 'Titel (de/en)',
'content_localization' => 'Inhaltslokalisierung',
'content_de' => 'Inhalt (Deutsch)',
'content_en' => 'Inhalt (Englisch)',
'is_published' => 'Veröffentlicht',
'effective_from' => 'Gültig ab',
'version' => 'Version',
],
],
'emotions' => [
'sections' => [
'content_localization' => 'Inhaltslokalisierung',
],
'fields' => [
'name_de' => 'Name (Deutsch)',
'description_de' => 'Beschreibung (Deutsch)',
'name_en' => 'Name (Englisch)',
'description_en' => 'Beschreibung (Englisch)',
'icon_emoji' => 'Icon/Emoji',
'color' => 'Farbe',
'sort_order' => 'Sortierreihenfolge',
'is_active' => 'Aktiv',
'event_types' => 'Eventtypen',
],
'table' => [
'name' => 'Name',
'icon' => 'Icon',
'color' => 'Farbe',
'is_active' => 'Aktiv',
'sort_order' => 'Sortierung',
],
'import' => [
'heading' => 'Emotionen importieren (CSV)',
],
],
'event_types' => [
'sections' => [
'name_localization' => 'Namenslokalisierung',
],
'fields' => [
'name_de' => 'Name (Deutsch)',
'name_en' => 'Name (Englisch)',
'slug' => 'Slug',
'icon' => 'Icon',
'settings' => 'Einstellungen',
'emotions' => 'Emotionen',
],
'table' => [
'name' => 'Name',
'slug' => 'Slug',
'icon' => 'Icon',
'created_at' => 'Erstellt',
],
],
'tasks' => [
'menu' => 'Aufgaben',
'fields' => [
'event_type_optional' => 'Eventtyp (optional)',
'content_localization' => 'Inhaltslokalisierung',
'title_de' => 'Titel (Deutsch)',
'description_de' => 'Beschreibung (Deutsch)',
'example_de' => 'Beispieltext (Deutsch)',
'title_en' => 'Titel (Englisch)',
'description_en' => 'Beschreibung (Englisch)',
'example_en' => 'Beispieltext (Englisch)',
'emotion' => 'Emotion',
'event_type' => 'Eventtyp',
'difficulty' => [
'label' => 'Schwierigkeit',
'easy' => 'Leicht',
'medium' => 'Mittel',
'hard' => 'Schwer',
],
],
'table' => [
'title' => 'Titel',
'is_active' => 'Aktiv',
'sort_order' => 'Sortierung',
],
'table' => [
'name' => 'Name',
'icon' => 'Icon',
'color' => 'Farbe',
'is_active' => 'Aktiv',
'sort_order' => 'Sortierung',
],
'import' => [
'heading' => 'Aufgaben importieren (CSV)',
],
],
'widgets' => [
'events_active_today' => [
'heading' => 'Heute aktive Events',
],
'recent_uploads' => [
'heading' => 'Neueste Uploads',
],
'top_tenants_by_uploads' => [
'heading' => 'TopMandanten nach Uploads',
],
'uploads_per_day' => [
'heading' => 'Uploads (14 Tage)',
],
'credit_alerts' => [
'low_balance_label' => 'Mandanten mit niedrigen Credits',
'low_balance_desc' => 'Benötigen Betreuung',
'monthly_revenue_label' => 'Umsatz (Monat)',
'monthly_revenue_desc' => 'Aktueller Monat (:month)',
'active_subscriptions_label' => 'Aktive Abos',
'active_subscriptions_desc' => 'Laufende Pakete',
],
'revenue_trend' => [
'heading' => 'Monatliche Einnahmen',
'series' => 'Umsatz (€)',
],
'top_tenants_by_revenue' => [
'heading' => 'TopMandanten nach Umsatz',
'total' => 'Gesamt (€)',
'count' => 'Käufe',
],
],
'notifications' => [
'file_not_found' => 'Datei nicht gefunden',
'imported_rows' => ':count Zeilen importiert',
'failed_count' => ':count fehlgeschlagen',
],
'tenants' => [
'fields' => [
'name' => 'Mandantenname',
'slug' => 'Slug',
'contact_email' => 'KontaktEMail',
'event_credits_balance' => 'EventCreditsKontostand',
'features' => 'Funktionen',
'total_revenue' => 'Gesamtumsatz',
'active_reseller_package' => 'Aktives Reseller-Paket',
'remaining_events' => 'Verbleibende Events',
'package_expires_at' => 'Ablaufdatum Paket',
'is_active' => 'Aktiv',
'is_suspended' => 'Suspendiert',
],
'actions' => [
'adjust_credits' => 'Credits anpassen',
'adjust_credits_delta' => 'Anzahl Credits (positiv/negativ)',
'adjust_credits_delta_hint' => 'Positive Werte fügen Credits hinzu, negative Werte ziehen ab.',
'adjust_credits_reason' => 'Interne Notiz',
'adjust_credits_success_title' => 'Credits aktualisiert',
'adjust_credits_success_body' => 'Die Credits wurden um :delta verändert. Neuer Kontostand: :balance.',
],
],
'purchase_history' => [
'fields' => [
'tenant' => 'Mandant',
'package' => 'Paket',
'credits' => 'Credits',
'price' => 'Preis',
'currency' => 'Währung',
'platform' => 'Plattform',
'transaction_id' => 'Transaktions-ID',
'purchased_at' => 'Kaufdatum',
],
'filters' => [
'purchased_at' => 'Zeitraum',
'platform' => 'Plattform',
'currency' => 'Währung',
'tenant' => 'Mandant',
],
'actions' => [
'export' => 'Exportieren',
],
'platforms' => [
'ios' => 'iOS',
'android' => 'Android',
'web' => 'Web',
'manual' => 'Manuell',
],
'export_success' => 'Export abgeschlossen. :count Einträge exportiert.',
],
'oauth' => [
'fields' => [
'name' => 'Name',
'client_id' => 'Client-ID',
'client_secret' => 'Client-Secret',
'tenant' => 'Mandant',
'redirect_uris' => 'Redirect-URIs',
'scopes' => 'Scopes',
'is_active' => 'Aktiv',
'description' => 'Beschreibung',
'updated_at' => 'Zuletzt geändert',
],
'hints' => [
'client_secret' => 'Leer lassen, um das bestehende Secret zu behalten oder für PKCE-Clients ohne Secret.',
'redirect_uris' => 'Eine URL pro Zeile. Die Callback-URL muss exakt übereinstimmen.',
],
'filters' => [
'is_active' => 'Status',
'any' => 'Alle',
'active' => 'Aktiv',
'inactive' => 'Inaktiv',
],
'actions' => [
'regenerate_secret' => 'Secret neu generieren',
],
'notifications' => [
'secret_regenerated_title' => 'Neues Secret erstellt',
'secret_regenerated_body' => 'Speichere das neue Secret sicher: :secret',
'created_title' => 'OAuth-Client erstellt',
'updated_title' => 'OAuth-Client gespeichert',
],
],
'refresh_tokens' => [
'menu' => 'Refresh Tokens',
'single' => 'Refresh Token',
'fields' => [
'tenant' => 'Mandant',
'client' => 'Client',
'status' => 'Status',
'revoked_reason' => 'Widerrufsgrund',
'created_at' => 'Erstellt',
'last_used_at' => 'Zuletzt verwendet',
'expires_at' => 'Gültig bis',
'ip_address' => 'IP-Adresse',
'user_agent' => 'User Agent',
'note' => 'Notiz',
],
'status' => [
'active' => 'Aktiv',
'revoked' => 'Widerrufen',
'expired' => 'Abgelaufen',
],
'filters' => [
'status' => 'Status',
'tenant' => 'Mandant',
],
'actions' => [
'revoke' => 'Token widerrufen',
],
'reasons' => [
'manual' => 'Manuell',
'operator' => 'Operator-Aktion',
'rotated' => 'Automatisch rotiert',
'ip_mismatch' => 'IP-Abweichung',
'expired' => 'Abgelaufen',
'invalid_secret' => 'Ungültiges Secret',
'tenant_missing' => 'Mandant entfernt',
'max_active_limit' => 'Maximale Anzahl überschritten',
],
'sections' => [
'details' => 'Token-Details',
'security' => 'Sicherheitskontext',
],
'audit' => [
'heading' => 'Audit-Log',
'event' => 'Ereignis',
'events' => [
'issued' => 'Ausgestellt',
'refresh_attempt' => 'Refresh versucht',
'refreshed' => 'Refresh erfolgreich',
'client_mismatch' => 'Client stimmt nicht überein',
'invalid_secret' => 'Ungültiges Secret',
'ip_mismatch' => 'IP-Abweichung',
'expired' => 'Abgelaufen',
'revoked' => 'Widerrufen',
'rotated' => 'Rotiert',
'tenant_missing' => 'Mandant fehlt',
'max_active_limit' => 'Begrenzung erreicht',
],
'performed_by' => 'Ausgeführt von',
'ip_address' => 'IP-Adresse',
'context' => 'Kontext',
'performed_at' => 'Zeitpunkt',
'empty' => [
'heading' => 'Noch keine Einträge',
'description' => 'Sobald das Token verwendet wird, erscheinen hier Einträge.',
],
],
'notifications' => [
'revoked' => 'Refresh Token wurde widerrufen.',
],
],
'shell' => [
'tenant_admin_title' => 'TenantAdmin',
],
'errors' => [
'forbidden' => [
'title' => 'Kein Zugriff',
'message' => 'Du hast keine Berechtigung, diesen Bereich des Admin-Panels zu öffnen.',
'hint' => 'Bitte prüfe, ob dein Mandantenpaket aktiv ist oder wende dich an den Support, wenn du Hilfe benötigst.',
'cta' => 'Zur Startseite',
],
],
];