Merge pull request #71 from roswitina/main
feat(i18n): add Deutsch(de) to language list
This commit is contained in:
+10
-1
@@ -56,6 +56,15 @@ const LANGUAGE_TEXTS = {
|
||||
modalTitle: 'انتخاب زبان',
|
||||
searchPlaceholder: 'جستجوی زبان...'
|
||||
}
|
||||
de: {
|
||||
title: 'Willkommen bei OxiCloud',
|
||||
subtitle: 'Bitte wählen Sie Ihre Sprache',
|
||||
continue: 'Fortfahren',
|
||||
autodetected: 'Wir haben Ihre Sprache automatisch erkannt',
|
||||
moreLanguages: 'Weitere Sprachen...',
|
||||
modalTitle: 'Sprache auswählen',
|
||||
searchPlaceholder: 'Sprache suchen...'
|
||||
}
|
||||
};
|
||||
|
||||
// Complete language registry — add new languages here, they'll appear automatically
|
||||
@@ -1167,4 +1176,4 @@ function logout() {
|
||||
localStorage.removeItem(TOKEN_EXPIRY_KEY);
|
||||
localStorage.removeItem(USER_DATA_KEY);
|
||||
window.location.href = '/login.html';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,332 @@
|
||||
{
|
||||
"app": {
|
||||
"title": "OxiCloud",
|
||||
"description": "Minimalistisches System zur Cloud-Datenspeicherung"
|
||||
},
|
||||
"nav": {
|
||||
"files": "Dateien",
|
||||
"shared": "Freigegebene Elemente",
|
||||
"recent": "Zuletzt verwendete Elemente",
|
||||
"favorites": "Favoriten",
|
||||
"trash": "Papierkorb"
|
||||
},
|
||||
"actions": {
|
||||
"search": "Dateien durchsuchen...",
|
||||
"new_folder": "Neuen Ordner erstellen",
|
||||
"upload": "Hochladen",
|
||||
"upload_files": "Dateien hochladen",
|
||||
"upload_folder": "Ordner hochladen",
|
||||
"rename": "Umbenennen",
|
||||
"move": "Verschieben nach...",
|
||||
"move_to": "Verschieben nach",
|
||||
"delete": "Löschen",
|
||||
"download": "Herunterladen",
|
||||
"view": "Anzeigen",
|
||||
"cancel": "Abbrechen",
|
||||
"confirm": "Bestätigen",
|
||||
"share": "Freigeben",
|
||||
"favorite": "Zu Favoriten hinzufügen",
|
||||
"unfavorite": "Aus Favoriten entfernen",
|
||||
"copy": "Kopieren",
|
||||
"notify": "Benachrichtigen",
|
||||
"send": "Senden",
|
||||
"clear_recent": "Verlauf löschen",
|
||||
"logout": "Abmelden",
|
||||
"create": "Erstellen",
|
||||
"search_btn": "Suchen",
|
||||
"close": "Schließen",
|
||||
"delete_permanently": "Endgültig löschen",
|
||||
"empty_trash": "Papierkorb leeren"
|
||||
},
|
||||
"user_menu": {
|
||||
"appearance": "Darstellung",
|
||||
"about": "Über OxiCloud",
|
||||
"about_description": "Plattform zur Cloud-Datenspeicherung, entwickelt mit Rust und Clean Architecture. Leistungsstark, sicher und datenschutzorientiert."
|
||||
},
|
||||
"share": {
|
||||
"dialogTitle": "Freigabelink erstellen",
|
||||
"linkLabel": "Freigabelink:",
|
||||
"copyLink": "Kopieren",
|
||||
"permissions": "Berechtigungen:",
|
||||
"permissionRead": "Leseberechtigung",
|
||||
"permissionWrite": "Schreibberechtigung",
|
||||
"permissionReshare": "Weiterfreigabeberechtigung",
|
||||
"password": "Passwortschutz:",
|
||||
"generatePassword": "Passwort generieren",
|
||||
"expiration": "Ablaufdatum:",
|
||||
"update": "Freigabe aktualisieren",
|
||||
"remove": "Freigabe entfernen",
|
||||
"notifyTitle": "Benachrichtigung versenden",
|
||||
"notifyEmailLabel": "E-Mail-Adresse:",
|
||||
"notifyMessageLabel": "Nachricht (optional):",
|
||||
"notifySend": "Benachrichtigung senden",
|
||||
"shareWithOthers": "Mit weiteren Personen teilen",
|
||||
"sharePublicly": "Öffentlich freigeben",
|
||||
"shareSettings": "Freigabeeinstellungen",
|
||||
"shareCopied": "Der Link wurde in die Zwischenablage kopiert.",
|
||||
"shareCreated": "Der Freigabelink wurde erfolgreich erstellt.",
|
||||
"shareUpdated": "Die Freigabeeinstellungen wurden erfolgreich aktualisiert.",
|
||||
"shareRemoved": "Die Freigabe wurde erfolgreich entfernt."
|
||||
},
|
||||
"share_dialogTitle": "Freigabelink erstellen",
|
||||
"share_linkLabel": "Freigabelink:",
|
||||
"share_copyLink": "Kopieren",
|
||||
"share_permissions": "Berechtigungen:",
|
||||
"share_permissionRead": "Leseberechtigung",
|
||||
"share_permissionWrite": "Schreibberechtigung",
|
||||
"share_permissionReshare": "Weiterfreigabeberechtigung",
|
||||
"share_password": "Passwortschutz:",
|
||||
"share_generatePassword": "Passwort generieren",
|
||||
"share_expiration": "Ablaufdatum:",
|
||||
"share_update": "Freigabe aktualisieren",
|
||||
"share_remove": "Freigabe entfernen",
|
||||
"share_notifyTitle": "Benachrichtigung versenden",
|
||||
"share_notifyEmailLabel": "E-Mail-Adresse:",
|
||||
"share_notifyMessageLabel": "Nachricht (optional):",
|
||||
"share_notifySend": "Benachrichtigung senden",
|
||||
"shared": {
|
||||
"backToFiles": "Zurück zur Dateiansicht",
|
||||
"pageTitle": "Freigegebene Elemente",
|
||||
"pageDescription": "Verwalten Sie Ihre freigegebenen Dateien und Ordner.",
|
||||
"filterType": "Typ:",
|
||||
"filterAll": "Alle",
|
||||
"filterFiles": "Dateien",
|
||||
"filterFolders": "Ordner",
|
||||
"sortBy": "Sortieren nach:",
|
||||
"sortByName": "Name",
|
||||
"sortByDate": "Freigabedatum",
|
||||
"sortByExpiration": "Ablaufdatum",
|
||||
"search": "Suchen",
|
||||
"colName": "Name",
|
||||
"colType": "Typ",
|
||||
"colDateShared": "Freigabedatum",
|
||||
"colExpiration": "Ablaufdatum",
|
||||
"colPermissions": "Berechtigungen",
|
||||
"colPassword": "Passwortschutz",
|
||||
"colActions": "Aktionen",
|
||||
"emptyStateTitle": "Derzeit sind keine freigegebenen Elemente vorhanden.",
|
||||
"emptyStateDesc": "Freigegebene Dateien und Ordner werden hier angezeigt.",
|
||||
"goToFiles": "Zur Dateiansicht wechseln",
|
||||
"typeFile": "Datei",
|
||||
"typeFolder": "Ordner",
|
||||
"noExpiration": "Kein Ablaufdatum festgelegt",
|
||||
"hasPassword": "Ja",
|
||||
"noPassword": "Nein",
|
||||
"editShare": "Freigabe bearbeiten",
|
||||
"notifyShare": "Person benachrichtigen",
|
||||
"copyLink": "Link kopieren",
|
||||
"removeShare": "Freigabe entfernen",
|
||||
"linkCopied": "Der Link wurde in die Zwischenablage kopiert.",
|
||||
"linkCopyFailed": "Der Link konnte nicht kopiert werden.",
|
||||
"itemUpdated": "Die Freigabeeinstellungen wurden erfolgreich aktualisiert.",
|
||||
"itemRemoved": "Die Freigabe wurde erfolgreich entfernt.",
|
||||
"invalidEmail": "Bitte geben Sie eine gültige E-Mail-Adresse ein.",
|
||||
"notificationSent": "Die Benachrichtigung wurde erfolgreich versendet.",
|
||||
"notificationFailed": "Die Benachrichtigung konnte nicht versendet werden.",
|
||||
"shared_backToFiles": "Zurück zur Dateiansicht",
|
||||
"shared_pageTitle": "Freigegebene Elemente",
|
||||
"shared_pageDescription": "Verwalten Sie Ihre freigegebenen Dateien und Ordner.",
|
||||
"shared_filterType": "Typ:",
|
||||
"shared_filterAll": "Alle",
|
||||
"shared_filterFiles": "Dateien",
|
||||
"shared_filterFolders": "Ordner",
|
||||
"shared_sortBy": "Sortieren nach:",
|
||||
"shared_sortByName": "Name",
|
||||
"shared_sortByDate": "Freigabedatum",
|
||||
"shared_sortByExpiration": "Ablaufdatum",
|
||||
"shared_search": "Suchen",
|
||||
"shared_colName": "Name",
|
||||
"shared_colType": "Typ",
|
||||
"shared_colDateShared": "Freigabedatum",
|
||||
"shared_colExpiration": "Ablaufdatum",
|
||||
"shared_colPermissions": "Berechtigungen",
|
||||
"shared_colPassword": "Passwortschutz",
|
||||
"shared_colActions": "Aktionen",
|
||||
"shared_emptyStateTitle": "Derzeit sind keine freigegebenen Elemente vorhanden.",
|
||||
"shared_emptyStateDesc": "Freigegebene Dateien und Ordner werden hier angezeigt.",
|
||||
"shared_goToFiles": "Zur Dateiansicht wechseln",
|
||||
"shared_typeFile": "Datei",
|
||||
"shared_typeFolder": "Ordner",
|
||||
"shared_noExpiration": "Kein Ablaufdatum festgelegt",
|
||||
"shared_hasPassword": "Ja",
|
||||
"shared_noPassword": "Nein",
|
||||
"shared_editShare": "Freigabe bearbeiten",
|
||||
"shared_notifyShare": "Person benachrichtigen",
|
||||
"shared_copyLink": "Link kopieren",
|
||||
"shared_removeShare": "Freigabe entfernen",
|
||||
"shared_linkCopied": "Der Link wurde in die Zwischenablage kopiert.",
|
||||
"shared_linkCopyFailed": "Der Link konnte nicht kopiert werden.",
|
||||
"shared_itemUpdated": "Die Freigabeeinstellungen wurden erfolgreich aktualisiert.",
|
||||
"shared_itemRemoved": "Die Freigabe wurde erfolgreich entfernt.",
|
||||
"shared_invalidEmail": "Bitte geben Sie eine gültige E-Mail-Adresse ein.",
|
||||
"shared_notificationSent": "Die Benachrichtigung wurde erfolgreich versendet.",
|
||||
"shared_notificationFailed": "Die Benachrichtigung konnte nicht versendet werden."
|
||||
},
|
||||
"files": {
|
||||
"name": "Name",
|
||||
"type": "Typ",
|
||||
"size": "Größe",
|
||||
"modified": "Geändert am",
|
||||
"no_files": "In diesem Ordner sind keine Dateien vorhanden.",
|
||||
"loading": "Dateien werden geladen …",
|
||||
"view_grid": "Rasteransicht",
|
||||
"view_list": "Listenansicht",
|
||||
"file_types": {
|
||||
"document": "Dokument",
|
||||
"image": "Bild",
|
||||
"video": "Video",
|
||||
"audio": "Audio",
|
||||
"pdf": "PDF-Dokument",
|
||||
"text": "Textdokument",
|
||||
"folder": "Ordner"
|
||||
}
|
||||
},
|
||||
"dialogs": {
|
||||
"rename_folder": "Ordner umbenennen",
|
||||
"rename_file": "Datei umbenennen",
|
||||
"new_name": "Neuer Name",
|
||||
"new_folder_title": "Neuen Ordner erstellen",
|
||||
"folder_name": "Ordnername",
|
||||
"folder_placeholder": "Neuer Ordner",
|
||||
"rename_title": "Umbenennen",
|
||||
"move_file": "Datei verschieben",
|
||||
"move_folder": "Ordner verschieben",
|
||||
"select_destination": "Zielordner auswählen:",
|
||||
"root": "Hauptverzeichnis",
|
||||
"delete_confirmation": "Sind Sie sicher, dass Sie dieses Element löschen möchten",
|
||||
"and_contents": "und alle enthaltenen Elemente",
|
||||
"no_undo": "Diese Aktion kann nicht rückgängig gemacht werden.",
|
||||
"confirm_title": "Aktion bestätigen",
|
||||
"confirm_delete": "In den Papierkorb verschieben",
|
||||
"confirm_delete_file": "Möchten Sie die Datei \"{{name}}\" in den Papierkorb verschieben?",
|
||||
"confirm_delete_folder": "Möchten Sie den Ordner \"{{name}}\" und alle enthaltenen Elemente in den Papierkorb verschieben?",
|
||||
"confirm_permanent_delete": "Endgültig löschen",
|
||||
"confirm_permanent_delete_msg": "Möchten Sie dieses Element dauerhaft löschen? Diese Aktion kann nicht rückgängig gemacht werden.",
|
||||
"confirm_empty_trash": "Papierkorb leeren",
|
||||
"confirm_delete_share": "Freigabelink löschen",
|
||||
"confirm_delete_share_msg": "Möchten Sie diesen Freigabelink löschen?",
|
||||
"share_file": "Datei freigeben",
|
||||
"existing_shares": "Bestehende Freigaben",
|
||||
"share_options": "Freigabeoptionen",
|
||||
"password": "Passwort",
|
||||
"expiration": "Ablaufdatum",
|
||||
"permissions": "Berechtigungen",
|
||||
"generated_link": "Generierter Link",
|
||||
"notify": "Benachrichtigung senden",
|
||||
"recipient": "Empfänger",
|
||||
"message": "Nachricht"
|
||||
},
|
||||
"dropzone": {
|
||||
"drag_files": "Ziehen Sie Dateien hierher oder klicken Sie, um Dateien auszuwählen.",
|
||||
"drop_files": "Legen Sie Dateien hier ab, um den Upload zu starten."
|
||||
},
|
||||
"permissions": {
|
||||
"read": "Leseberechtigung",
|
||||
"write": "Schreibberechtigung",
|
||||
"reshare": "Weiterfreigabeberechtigung"
|
||||
},
|
||||
"errors": {
|
||||
"file_not_found": "Die Datei wurde nicht gefunden.",
|
||||
"folder_not_found": "Der Ordner wurde nicht gefunden.",
|
||||
"delete_error": "Beim Löschen ist ein Fehler aufgetreten.",
|
||||
"upload_error": "Beim Hochladen ist ein Fehler aufgetreten.",
|
||||
"rename_error": "Beim Umbenennen ist ein Fehler aufgetreten.",
|
||||
"move_error": "Beim Verschieben ist ein Fehler aufgetreten.",
|
||||
"empty_name": "Der Name darf nicht leer sein.",
|
||||
"name_exists": "Eine Datei oder ein Ordner mit diesem Namen existiert bereits.",
|
||||
"generic_error": "Es ist ein unerwarteter Fehler aufgetreten."
|
||||
},
|
||||
"breadcrumb": {
|
||||
"home": "Startseite"
|
||||
},
|
||||
"trash": {
|
||||
"empty_trash": "Papierkorb leeren",
|
||||
"empty_state": "Der Papierkorb ist leer.",
|
||||
"original_location": "Ursprünglicher Speicherort",
|
||||
"deleted_date": "Löschdatum",
|
||||
"actions": "Aktionen",
|
||||
"restore": "Wiederherstellen",
|
||||
"delete_permanently": "Endgültig löschen",
|
||||
"empty_confirm": "Sind Sie sicher, dass Sie den Papierkorb leeren möchten? Alle enthaltenen Elemente werden dauerhaft gelöscht."
|
||||
},
|
||||
"auth": {
|
||||
"login_title": "Anmelden",
|
||||
"username": "Benutzername",
|
||||
"username_placeholder": "Bitte geben Sie Ihren Benutzernamen ein",
|
||||
"password": "Passwort",
|
||||
"password_placeholder": "Bitte geben Sie Ihr Passwort ein",
|
||||
"login_button": "Anmelden",
|
||||
"no_account": "Verfügen Sie noch über kein Konto?",
|
||||
"register": "Registrieren",
|
||||
"admin_setup": "Erstmalige Nutzung?",
|
||||
"setup": "Administrator einrichten",
|
||||
"register_title": "Konto erstellen",
|
||||
"email": "E-Mail-Adresse",
|
||||
"email_placeholder": "Bitte geben Sie Ihre E-Mail-Adresse ein",
|
||||
"confirm_password": "Passwort bestätigen",
|
||||
"confirm_password_placeholder": "Bitte bestätigen Sie Ihr Passwort",
|
||||
"register_button": "Konto erstellen",
|
||||
"have_account": "Verfügen Sie bereits über ein Konto?",
|
||||
"login": "Anmelden",
|
||||
"setup_title": "Ersteinrichtung",
|
||||
"setup_step1": "Administrator",
|
||||
"setup_step2": "Systemkonfiguration",
|
||||
"setup_step3": "Abschluss",
|
||||
"admin_username": "Administrator-Benutzername",
|
||||
"admin_email": "Administrator-E-Mail-Adresse",
|
||||
"admin_password": "Administrator-Passwort",
|
||||
"create_admin": "Administrator erstellen",
|
||||
"back_to_login": "System bereits eingerichtet?",
|
||||
"admin_success": "Das Administrator-Konto wurde erfolgreich erstellt. Sie können sich nun anmelden.",
|
||||
"account_success": "Das Konto wurde erfolgreich erstellt. Sie können sich nun anmelden.",
|
||||
"passwords_mismatch": "Die eingegebenen Passwörter stimmen nicht überein.",
|
||||
"admin_create_error": "Beim Erstellen des Administrator-Kontos ist ein Fehler aufgetreten."
|
||||
},
|
||||
"storage": {
|
||||
"title": "Speicher",
|
||||
"calculating": "Speicherplatz wird berechnet...",
|
||||
"used": "{{percentage}} % verwendet ({{used}} von {{total}})"
|
||||
},
|
||||
"viewer": {
|
||||
"unsupported_file": "Für diesen Dateityp ist keine Vorschau verfügbar.",
|
||||
"download_file": "Datei herunterladen",
|
||||
"zoom_in": "Vergrößern",
|
||||
"zoom_out": "Verkleinern",
|
||||
"zoom_reset": "Zoom zurücksetzen"
|
||||
},
|
||||
"language_selector": {
|
||||
"title": "Willkommen bei OxiCloud",
|
||||
"subtitle": "Bitte wählen Sie Ihre Sprache",
|
||||
"continue": "Fortfahren",
|
||||
"languages": {
|
||||
"en": "Englisch",
|
||||
"es": "Spanisch",
|
||||
"zh": "Chinesisch",
|
||||
"fa": "Persisch"
|
||||
}
|
||||
},
|
||||
"favorites": {
|
||||
"empty_state": "Derzeit sind keine Favoriten vorhanden.",
|
||||
"empty_hint": "Markieren Sie Dateien oder Ordner, um sie zu Ihren Favoriten hinzuzufügen.",
|
||||
"add": "Zu Favoriten hinzufügen",
|
||||
"remove": "Aus Favoriten entfernen"
|
||||
},
|
||||
"recent": {
|
||||
"title": "Zuletzt verwendete Elemente",
|
||||
"clear": "Verlauf löschen",
|
||||
"accessed": "Geöffnet am",
|
||||
"empty_state": "Keine zuletzt verwendeten Dateien vorhanden.",
|
||||
"empty_hint": "Geöffnete Dateien werden hier angezeigt."
|
||||
},
|
||||
"notifications": {
|
||||
"file_renamed": "Datei wurde umbenannt.",
|
||||
"file_renamed_to": "Die Datei wurde in \"{{name}}\" umbenannt.",
|
||||
"folder_renamed": "Ordner wurde umbenannt.",
|
||||
"folder_renamed_to": "Der Ordner wurde in \"{{name}}\" umbenannt.",
|
||||
"file_uploaded": "Die Datei wurde erfolgreich hochgeladen.",
|
||||
"file_deleted": "Die Datei wurde in den Papierkorb verschoben.",
|
||||
"folder_deleted": "Der Ordner wurde in den Papierkorb verschoben.",
|
||||
"item_deleted_permanently": "Das Element wurde dauerhaft gelöscht.",
|
||||
"trash_emptied": "Der Papierkorb wurde erfolgreich geleert."
|
||||
}
|
||||
}
|
||||
+2
-1
@@ -8,6 +8,7 @@ const ASSETS_TO_CACHE = [
|
||||
'/locales/en.json',
|
||||
'/locales/es.json',
|
||||
'/locales/fa.json',
|
||||
'/locales/de.json',
|
||||
'/favicon.ico',
|
||||
'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css',
|
||||
'https://cdn.jsdelivr.net/npm/alpinejs@3.12.3/dist/cdn.min.js'
|
||||
@@ -95,4 +96,4 @@ self.addEventListener('sync', event => {
|
||||
Promise.resolve() // Placeholder for actual implementation
|
||||
);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user