Browse Source

[Web] Sort lang de/en

andryyy 4 years ago
parent
commit
29553567a9
2 changed files with 182 additions and 176 deletions
  1. 93 90
      data/web/lang/lang.de.json
  2. 89 86
      data/web/lang/lang.en.json

+ 93 - 90
data/web/lang/lang.de.json

@@ -4,17 +4,20 @@
         "app_passwds": "App-Passwörter verwalten",
         "bcc_maps": "BCC-Maps",
         "delimiter_action": "Delimiter-Aktionen (tags)",
+        "domain_desc": "Domainbeschreibung ändern",
+        "domain_relayhost": "Relayhost für eine Domain setzen",
         "eas_reset": "EAS-Cache zurücksetzen",
         "extend_sender_acl": "Eingabe externer Absenderadressen erlauben",
         "filters": "Filter",
         "login_as": "Einloggen als Mailbox-Benutzer",
+        "mailbox_relayhost": "Relayhost für eine Mailbox setzen",
         "prohibited": "Untersagt durch Richtlinie",
         "protocol_access": "Ändern der erlaubten Protokolle",
         "pushover": "Pushover",
         "quarantine": "Quarantäne-Aktionen",
         "quarantine_attachments": "Anhänge aus Quarantäne",
-        "quarantine_notification": "Ändern der Quarantäne-Benachrichtigung",
         "quarantine_category": "Ändern der Quarantäne-Benachrichtigungskategorie",
+        "quarantine_notification": "Ändern der Quarantäne-Benachrichtigung",
         "ratelimit": "Rate limit",
         "recipient_maps": "Empfängerumschreibungen",
         "smtp_ip_access": "Verwalten der erlaubten Hosts für SMTP",
@@ -26,9 +29,6 @@
         "syncjobs": "Sync Jobs",
         "tls_policy": "Verschlüsselungsrichtlinie",
         "unlimited_quota": "Unendliche Quota für Mailboxen",
-        "domain_desc": "Domainbeschreibung ändern",
-        "mailbox_relayhost": "Relayhost für eine Mailbox setzen",
-        "domain_relayhost": "Relayhost für eine Domain setzen",
         "xmpp_admin": "Benutzer zum XMPP-Administrator ernennen",
         "xmpp_domain_access": "XMPP-Zugang einer Domain konfigurieren",
         "xmpp_mailbox_access": "XMPP-Zugang eines Benutzers einstellen",
@@ -65,14 +65,6 @@
         "full_name": "Vor- und Nachname",
         "gal": "Globales Adressbuch",
         "gal_info": "Das globale Adressbuch enthält alle Objekte einer Domain und kann durch keinen Benutzer geändert werden. Die Verfügbarkeitsinformation in SOGo ist nur bei eingeschaltetem globalen Adressbuch ersichtlich! <b>Zum Anwenden einer Änderung muss SOGo neugestartet werden.</b>",
-        "xmpp": "XMPP für diese Domain aktivieren",
-        "xmpp_prefix": "XMPP-Präfix für Domain (\"im\" für <b>im</b>.example.org)",
-        "xmpp_prefix_info": "Für die Bereitstellung eines Zertifikates sollte vorab ein DNS-Eintrag, etwa in Form eines CNAMEs, für <b>im</b>.example.org sowie <b>*.im</b>.example.org auf <b>%s</b> zeigend angelegt werden. Im Anschluss an die Aktivierung sollte der DNS-Check für diese Domain ausgeführt werden.",
-        "xmpp_info": "Diese Funktion stellt eine Chat-Funktionalität für die Domain bereit.",
-        "xmpp_access": "XMPP-Zugang",
-        "xmpp_access_info": "XMPP muss für diese Domain aktiviert sein.",
-        "xmpp_admin": "XMPP-Administrator",
-        "xmpp_admin_info": "<b>Vorsicht:</b> Ernennt den Benutzer zum Administrator der jeweiligen XMPP-Domain.",
         "generate": "generieren",
         "goto_ham": "Nachrichten als <span class=\"text-success\"><b>Ham</b></span> lernen",
         "goto_null": "Nachrichten sofort verwerfen",
@@ -116,13 +108,17 @@
         "timeout2": "Timeout für Verbindung zum lokalen Host",
         "username": "Benutzername",
         "validate": "Validieren",
-        "validation_success": "Erfolgreich validiert"
+        "validation_success": "Erfolgreich validiert",
+        "xmpp": "XMPP für diese Domain aktivieren",
+        "xmpp_access": "XMPP-Zugang",
+        "xmpp_access_info": "XMPP muss für diese Domain aktiviert sein.",
+        "xmpp_admin": "XMPP-Administrator",
+        "xmpp_admin_info": "<b>Vorsicht:</b> Ernennt den Benutzer zum Administrator der jeweiligen XMPP-Domain.",
+        "xmpp_info": "Diese Funktion stellt eine Chat-Funktionalität für die Domain bereit.",
+        "xmpp_prefix": "XMPP-Präfix für Domain (\"im\" für <b>im</b>.example.org)",
+        "xmpp_prefix_info": "Für die Bereitstellung eines Zertifikates sollte vorab ein DNS-Eintrag, etwa in Form eines CNAMEs, für <b>im</b>.example.org sowie <b>*.im</b>.example.org auf <b>%s</b> zeigend angelegt werden. Im Anschluss an die Aktivierung sollte der DNS-Check für diese Domain ausgeführt werden."
     },
     "admin": {
-        "success": "Erfolg",
-        "service": "Dienst",
-        "login_time": "Zeit",
-        "username": "Benutzername",
         "access": "Zugang",
         "action": "Aktion",
         "activate_api": "API aktivieren",
@@ -141,10 +137,10 @@
         "add_transports_hint": "Bitte beachten Sie, dass Anmeldedaten unverschlüsselt gespeichert werden.",
         "additional_rows": " zusätzliche Zeilen geladen",
         "admin": "Administrator",
-        "admins": "Administratoren",
-        "admins_ldap": "LDAP-Administratoren",
         "admin_details": "Administrator bearbeiten",
         "admin_domains": "Domain-Zuweisungen",
+        "admins": "Administratoren",
+        "admins_ldap": "LDAP-Administratoren",
         "advanced_settings": "Erweiterte Einstellungen",
         "api_allow_from": "IP-Adressen oder Netzwerke (CIDR Notation) für Zugriff auf API",
         "api_info": "Die API befindet sich noch in Entwicklung, die Dokumentation kann unter <a href=\"/api\">/api</a> abgerufen werden.",
@@ -214,16 +210,17 @@
         "html": "HTML",
         "import": "Importieren",
         "import_private_key": "Private Key importieren",
-        "is_mx_based": "MX-basiert",
         "in_use_by": "Verwendet von",
         "inactive": "Inaktiv",
         "include_exclude": "Ein- und Ausschlüsse",
         "include_exclude_info": "Ohne Auswahl werden <b>alle Mailboxen</b> adressiert.",
         "includes": "Diese Empfänger einschließen",
+        "is_mx_based": "MX-basiert",
         "last_applied": "Zuletzt angewendet",
         "license_info": "Eine Lizenz ist nicht erforderlich, hilft jedoch der Entwicklung mailcows.<br><a href=\"https://www.servercow.de/mailcow#sal\" target=\"_blank\" alt=\"SAL Bestellung\">Hier kann die mailcow-GUID registriert werden.</a> Alternativ ist <a href=\"https://www.servercow.de/mailcow#support\" target=\"_blank\" alt=\"SAL Bestellung\">die Bestellung von Support-Paketen möglich</a>.",
         "link": "Link",
         "loading": "Bitte warten...",
+        "login_time": "Zeit",
         "logo_info": "Die hochgeladene Grafik wird für die Navigationsleiste auf eine Höhe von 40px skaliert. Für die Darstellung auf der Login-Maske beträgt die skalierte Breite maximal 250px. Eine frei skalierbare Grafik (etwa SVG) wird empfohlen.",
         "lookup_mx": "Ziel mit MX vergleichen (Regex, etwa <code>.*google\\.com</code>, um alle Ziele mit MX *google.com zu routen)",
         "main_name": "\"mailcow UI\" Name",
@@ -247,8 +244,8 @@
         "password_policy": "Passwortrichtlinie",
         "password_policy_chars": "Muss ein alphabetisches Zeichen enthalten",
         "password_policy_length": "Mindestlänge des Passwortes ist %d Zeichen",
-        "password_policy_numbers": "Muss eine Ziffer enthalten",
         "password_policy_lowerupper": "Muss Großbuchstaben und Kleinbuchstaben enthalten",
+        "password_policy_numbers": "Muss eine Ziffer enthalten",
         "password_policy_special_chars": "Muss Sonderzeichen enthalten",
         "password_repeat": "Passwort wiederholen",
         "priority": "Gewichtung",
@@ -257,8 +254,8 @@
         "quarantine_bcc": "Eine Kopie aller Benachrichtigungen (BCC) an folgendes Postfach senden:<br><small>Leer bedeutet deaktiviert. <b>Unsignierte, ungeprüfte E-Mail. Sollte nur intern zugestellt werden.</b></small>",
         "quarantine_exclude_domains": "Domains und Alias-Domains ausschließen",
         "quarantine_max_age": "Maximales Alter in Tagen<br><small>Wert muss größer oder gleich 1 Tag sein.</small>",
-        "quarantine_max_size": "Maximale Größe in MiB (größere Elemente werden verworfen):<br><small>0 bedeutet <b>nicht</b> unlimitiert.</small>",
         "quarantine_max_score": "Nicht benachrichtigen, wenn der Spam-Score höher ist als der folgende Wert:<br><small>Standardwert 9999.0</small>",
+        "quarantine_max_size": "Maximale Größe in MiB (größere Elemente werden verworfen):<br><small>0 bedeutet <b>nicht</b> unlimitiert.</small>",
         "quarantine_notification_html": "Benachrichtigungs-E-Mail Inhalt:<br><small>Leer lassen, um Standard-Template wiederherzustellen.</small>",
         "quarantine_notification_sender": "Benachrichtigungs-E-Mail Absender",
         "quarantine_notification_subject": "Benachrichtigungs-E-Mail Betreff",
@@ -271,9 +268,9 @@
         "queue_deliver_mail": "Ausliefern",
         "queue_hold_mail": "Zurückhalten",
         "queue_manager": "Queue Manager",
+        "queue_show_message": "Nachricht anzeigen",
         "queue_unban": "Entsperren einreihen",
         "queue_unhold_mail": "Freigeben",
-        "queue_show_message": "Nachricht anzeigen",
         "quota_notification_html": "Benachrichtigungs-E-Mail Inhalt:<br><small>Leer lassen, um Standard-Template wiederherzustellen.</small>",
         "quota_notification_sender": "Benachrichtigungs-E-Mail Absender",
         "quota_notification_subject": "Benachrichtigungs-E-Mail Betreff",
@@ -318,10 +315,12 @@
         "search_domain_da": "Suche Domains",
         "send": "Senden",
         "sender": "Sender",
+        "service": "Dienst",
         "service_id": "Service",
         "source": "Quelle",
         "spamfilter": "Spamfilter",
         "subject": "Betreff",
+        "success": "Erfolg",
         "sys_mails": "System-E-Mails",
         "text": "Text",
         "time": "Zeit",
@@ -330,8 +329,8 @@
         "to_top": "Nach oben",
         "transport_dest_format": "Regex oder Syntax: example.org, .example.org, *, box@example.org (getrennt durch Komma einzugeben)",
         "transport_maps": "Transport-Maps",
-        "transports_hint": "&#8226; Transport-Maps <b>überwiegen</b> senderabhängige Transport Maps.<br>\r\n&#8226; MX-basierte Transporte werden bevorzugt.<br>\r\n&#8226; Transport-Maps ignorieren Mailbox-Einstellungen für ausgehende Verschlüsselung. Eine serverweite TLS-Richtlinie wird jedoch angewendet.<br>\r\n&#8226; Der Transport erfolgt immer via \"smtp:\", verwendet TLS wenn angeboten und unterstützt kein wrapped TLS (SMTPS).<br>\r\n&#8226; Adressen, die mit \"/localhost$/\" übereinstimmen, werden immer via \"local:\" transportiert, daher sind sie von einer Zieldefinition \"*\" ausgeschlossen.<br>\r\n&#8226; Die Authentifizierung wird anhand des \"Next hop\" Parameters ermittelt. Hierbei würde bei einem beispielhaften Wert \"[host]:25\" immer zuerst \"host\" abfragt und <b>erst im Anschluss</b> \"[host]:25\". Dieses Verhalten schließt die <b>gleichzeitige Verwendung</b> von Einträgen der Art \"host\" sowie \"[host]:25\" aus.",
         "transport_test_rcpt_info": "&#8226; Die Verwendung von null@hosted.mailcow.de testet das Relay gegen ein fremdes Ziel.",
+        "transports_hint": "&#8226; Transport-Maps <b>überwiegen</b> senderabhängige Transport Maps.<br>\r\n&#8226; MX-basierte Transporte werden bevorzugt.<br>\r\n&#8226; Transport-Maps ignorieren Mailbox-Einstellungen für ausgehende Verschlüsselung. Eine serverweite TLS-Richtlinie wird jedoch angewendet.<br>\r\n&#8226; Der Transport erfolgt immer via \"smtp:\", verwendet TLS wenn angeboten und unterstützt kein wrapped TLS (SMTPS).<br>\r\n&#8226; Adressen, die mit \"/localhost$/\" übereinstimmen, werden immer via \"local:\" transportiert, daher sind sie von einer Zieldefinition \"*\" ausgeschlossen.<br>\r\n&#8226; Die Authentifizierung wird anhand des \"Next hop\" Parameters ermittelt. Hierbei würde bei einem beispielhaften Wert \"[host]:25\" immer zuerst \"host\" abfragt und <b>erst im Anschluss</b> \"[host]:25\". Dieses Verhalten schließt die <b>gleichzeitige Verwendung</b> von Einträgen der Art \"host\" sowie \"[host]:25\" aus.",
         "ui_footer": "Footer (HTML zulässig)",
         "ui_header_announcement": "Ankündigungen",
         "ui_header_announcement_active": "Ankündigung aktivieren",
@@ -339,9 +338,9 @@
         "ui_header_announcement_help": "Die Ankündigungsbox erzeugt einen deutlichen Hinweis für alle Benutzer und auf der Login-Seite der UI.",
         "ui_header_announcement_select": "Ankündigungstyp auswählen",
         "ui_header_announcement_type": "Typ",
+        "ui_header_announcement_type_danger": "Sehr wichtig",
         "ui_header_announcement_type_info": "Info",
         "ui_header_announcement_type_warning": "Wichtig",
-        "ui_header_announcement_type_danger": "Sehr wichtig",
         "ui_texts": "UI-Label und Texte",
         "unban_pending": "ausstehend",
         "unchanged_if_empty": "Unverändert, wenn leer",
@@ -377,13 +376,13 @@
         "domain_quota_m_in_use": "Domain-Speicherplatzlimit muss größer oder gleich %d MiB sein",
         "extra_acl_invalid": "Externe Absenderadresse \"%s\" ist ungültig",
         "extra_acl_invalid_domain": "Externe Absenderadresse \"%s\" verwendet eine ungültige Domain",
+        "fido2_verification_failed": "FIDO2-Verifizierung fehlgeschlagen: %s",
         "file_open_error": "Datei kann nicht zum Schreiben geöffnet werden",
         "filter_type": "Falscher Filtertyp",
         "from_invalid": "Die Absenderadresse muss eine gültige E-Mail-Adresse sein",
         "global_filter_write_error": "Kann Filterdatei nicht schreiben: %s",
         "global_map_invalid": "Rspamd-Map %s ist ungültig",
         "global_map_write_error": "Kann globale Map ID %s nicht schreiben: %s",
-        "xmpp_map_write_error": "Kann XMPP-Map nicht schreiben: %s",
         "goto_empty": "Eine Alias-Adresse muss auf mindestens eine gültige Ziel-Adresse zeigen",
         "goto_invalid": "Ziel-Adresse %s ist ungültig",
         "ham_learn_error": "Ham Lernfehler: %s",
@@ -418,10 +417,10 @@
         "max_quota_in_use": "Mailbox-Speicherplatzlimit muss größer oder gleich %d MiB sein",
         "maxquota_empty": "Max. Speicherplatz pro Mailbox darf nicht 0 sein.",
         "mysql_error": "MySQL-Fehler: %s",
-        "nginx_reload_failed": "Nginx Reload ist fehlgeschlagen: %s",
         "network_host_invalid": "Netzwerk oder Host ungültig: %s",
         "next_hop_interferes": "%s verhindert das Hinzufügen von Next Hop %s",
         "next_hop_interferes_any": "Ein vorhandener Eintrag verhindert das Hinzufügen von Next Hop %s",
+        "nginx_reload_failed": "Nginx Reload ist fehlgeschlagen: %s",
         "no_user_defined": "Kein Benutzer definiert",
         "object_exists": "Objekt %s existiert bereits",
         "object_is_not_numeric": "Wert %s ist nicht numerisch",
@@ -462,52 +461,52 @@
         "totp_verification_failed": "TOTP-Verifizierung fehlgeschlagen",
         "transport_dest_exists": "Transport-Maps-Ziel \"%s\" existiert bereits",
         "u2f_verification_failed": "U2F-Verifizierung fehlgeschlagen: %s",
-        "fido2_verification_failed": "FIDO2-Verifizierung fehlgeschlagen: %s",
         "unknown": "Ein unbekannter Fehler trat auf",
         "unknown_tfa_method": "Unbekannte TFA-Methode",
         "unlimited_quota_acl": "Unendliche Quota untersagt durch ACL",
         "username_invalid": "Benutzername %s kann nicht verwendet werden",
         "validity_missing": "Bitte geben Sie eine Gültigkeitsdauer an",
         "value_missing": "Bitte alle Felder ausfüllen",
-        "yotp_verification_failed": "Yubico OTP-Verifizierung fehlgeschlagen: %s",
+        "xmpp_map_write_error": "Kann XMPP-Map nicht schreiben: %s",
+        "xmpp_reload_failed": "XMPP konnte nicht neu geladen werden",
         "xmpp_restart_failed": "XMPP konnte nicht neu gestartet werden",
-        "xmpp_reload_failed": "XMPP konnte nicht neu geladen werden"
+        "yotp_verification_failed": "Yubico OTP-Verifizierung fehlgeschlagen: %s"
     },
     "debug": {
         "chart_this_server": "Chart (dieser Server)",
         "containers_info": "Container-Information",
         "disk_usage": "Festplattennutzung",
+        "docs": "Dokumente",
         "external_logs": "Externe Logs",
         "history_all_servers": "History (alle Server)",
         "in_memory_logs": "In-memory Logs",
         "jvm_memory_solr": "JVM-Speicherauslastung",
+        "last_modified": "Zuletzt geändert",
         "log_info": "<p>mailcow <b>in-memory Logs</b> werden in Redis Listen gespeichert, die maximale Anzahl der Einträge pro Anwendung richtet sich nach LOG_LINES (%d).\r\n  <br>In-memory Logs sind vergänglich und nicht zur ständigen Aufbewahrung bestimmt. Alle Anwendungen, die in-memory protokollieren, schreiben ebenso in den Docker Daemon.\r\n  <br>Das in-memory Protokoll versteht sich als schnelle Übersicht zum Debugging eines Containers, für komplexere Protokolle sollte der Docker Daemon konsultiert werden.</p>\r\n  <p><b>Externe Logs</b> werden via API externer Applikationen bezogen.</p>\r\n  <p><b>Statische Logs</b> sind weitestgehend Aktivitätsprotokolle, die nicht in den Docker Daemon geschrieben werden, jedoch permanent verfügbar sein müssen (ausgeschlossen API Logs).</p>",
+        "login_time": "Zeit",
         "logs": "Protokolle",
-        "restart_container": "Neustart",
-        "solr_dead": "Solr startet, ist deaktiviert oder temporär nicht erreichbar.",
-        "xmpp_dead": "XMPP startet, ist deaktiviert oder temporär nicht erreichbar.",
-        "docs": "Dokumente",
-        "last_modified": "Zuletzt geändert",
         "online_users": "Benutzer online",
+        "restart_container": "Neustart",
+        "service": "Dienst",
         "size": "Größe",
-        "started_at": "Gestartet am",
+        "solr_dead": "Solr startet, ist deaktiviert oder temporär nicht erreichbar.",
         "solr_status": "Solr Status",
-        "uptime": "Uptime",
-        "success": "Erfolg",
-        "service": "Dienst",
-        "login_time": "Zeit",
-        "username": "Benutzername",
+        "started_at": "Gestartet am",
         "started_on": "Gestartet am",
         "static_logs": "Statische Logs",
+        "success": "Erfolg",
         "system_containers": "System & Container",
+        "uptime": "Uptime",
+        "username": "Benutzername",
+        "xmpp_dead": "XMPP startet, ist deaktiviert oder temporär nicht erreichbar.",
         "xmpp_status": "XMPP Status"
     },
     "diagnostics": {
         "cname_from_a": "Wert abgeleitet von A/AAAA-Eintrag. Wird unterstützt, sofern der Eintrag auf die korrekte Ressource zeigt.",
         "dns_records": "DNS-Einträge",
         "dns_records_24hours": "Bitte beachten Sie, dass es bis zu 24 Stunden dauern kann, bis Änderungen an Ihren DNS-Einträgen als aktueller Status auf dieser Seite dargestellt werden. Diese Seite ist nur als Hilfsmittel gedacht, um die korrekten Werte für DNS-Einträge anzuzeigen und zu überprüfen, ob die Daten im DNS hinterlegt sind.",
-        "dns_records_docs": "Die <a target=\"_blank\" href=\"https://mailcow.github.io/mailcow-dockerized-docs/prerequisite-dns/\">Online-Dokumentation</a> enthält weitere Informationen zur DNS-Konfiguration.",
         "dns_records_data": "Korrekte Daten",
+        "dns_records_docs": "Die <a target=\"_blank\" href=\"https://mailcow.github.io/mailcow-dockerized-docs/prerequisite-dns/\">Online-Dokumentation</a> enthält weitere Informationen zur DNS-Konfiguration.",
         "dns_records_name": "Name",
         "dns_records_status": "Aktueller Status",
         "dns_records_type": "Typ",
@@ -550,15 +549,6 @@
         "full_name": "Voller Name",
         "gal": "Globales Adressbuch",
         "gal_info": "Das globale Adressbuch enthält alle Objekte einer Domain und kann durch keinen Benutzer geändert werden. Die Verfügbarkeitsinformation in SOGo ist nur bei eingeschaltetem globalen Adressbuch ersichtlich <b>Zum Anwenden einer Änderung muss SOGo neugestartet werden.</b>",
-        "xmpp": "XMPP für diese Domain aktivieren",
-        "xmpp_prefix": "XMPP-Präfix für Domain (\"im\" für <b>im</b>.example.org)",
-        "xmpp_prefix_info": "Für die Bereitstellung eines Zertifikates sollte vorab ein DNS-Eintrag, etwa in Form eines CNAMEs, für <b>im</b>.example.org sowie <b>*.im</b>.example.org auf <b>%s</b> zeigend angelegt werden. Im Anschluss an die Aktivierung sollte der DNS-Check für diese Domain ausgeführt werden.",
-        "xmpp_info": "Diese Funktion stellt eine Chat-Funktionalität für die Domain bereit.",
-        "xmpp_access": "XMPP-Zugang",
-        "xmpp_access_info": "XMPP muss für diese Domain aktiviert sein.",
-        "xmpp_admin": "XMPP-Administrator",
-        "xmpp_admin_info": "<b>Vorsicht:</b> Ernennt den Benutzer zum Administrator der jeweiligen XMPP Domain.",
-        "xmpp_example_jid": "<b>Beispiel JID</b> (Passwort entspricht Mailbox-Passwort)",
         "generate": "generieren",
         "grant_types": "Grant-types",
         "hostname": "Servername",
@@ -566,8 +556,8 @@
         "kind": "Art",
         "lookup_mx": "Ziel mit MX vergleichen (Regex, etwa <code>.*google\\.com</code>, um alle Ziele mit MX *google.com zu routen)",
         "mailbox": "Mailbox bearbeiten",
-        "mailbox_relayhost_info": "Wird auf eine Mailbox und direkte Alias-Adressen angewendet. Überschreibt die Einstellung einer Domain.",
         "mailbox_quota_def": "Standard-Quota einer Mailbox",
+        "mailbox_relayhost_info": "Wird auf eine Mailbox und direkte Alias-Adressen angewendet. Überschreibt die Einstellung einer Domain.",
         "max_aliases": "Max. Aliasse",
         "max_mailboxes": "Max. Mailboxanzahl",
         "max_quota": "Max. Größe per Mailbox (MiB)",
@@ -629,7 +619,30 @@
         "title": "Objekt bearbeiten",
         "unchanged_if_empty": "Unverändert, wenn leer",
         "username": "Benutzername",
-        "validate_save": "Validieren und speichern"
+        "validate_save": "Validieren und speichern",
+        "xmpp": "XMPP für diese Domain aktivieren",
+        "xmpp_access": "XMPP-Zugang",
+        "xmpp_access_info": "XMPP muss für diese Domain aktiviert sein.",
+        "xmpp_admin": "XMPP-Administrator",
+        "xmpp_admin_info": "<b>Vorsicht:</b> Ernennt den Benutzer zum Administrator der jeweiligen XMPP Domain.",
+        "xmpp_example_jid": "<b>Beispiel JID</b> (Passwort entspricht Mailbox-Passwort)",
+        "xmpp_info": "Diese Funktion stellt eine Chat-Funktionalität für die Domain bereit.",
+        "xmpp_prefix": "XMPP-Präfix für Domain (\"im\" für <b>im</b>.example.org)",
+        "xmpp_prefix_info": "Für die Bereitstellung eines Zertifikates sollte vorab ein DNS-Eintrag, etwa in Form eines CNAMEs, für <b>im</b>.example.org sowie <b>*.im</b>.example.org auf <b>%s</b> zeigend angelegt werden. Im Anschluss an die Aktivierung sollte der DNS-Check für diese Domain ausgeführt werden."
+    },
+    "fido2": {
+        "confirm": "Bestätigen",
+        "fido2_auth": "Anmeldung über FIDO2",
+        "fido2_success": "Das Gerät wurde erfolgreich registriert",
+        "fido2_validation_failed": "Validierung fehlgeschlagen",
+        "fn": "Benutzerfreundlicher Name",
+        "known_ids": "Bekannte IDs",
+        "none": "Deaktiviert",
+        "register_status": "Registrierungsstatus",
+        "rename": "Umbenennen",
+        "set_fido2": "Registriere FIDO2-Gerät",
+        "set_fn": "Benutzerfreundlichen Namen konfigurieren",
+        "start_fido2_validation": "Starte FIDO2-Validierung"
     },
     "footer": {
         "cancel": "Abbrechen",
@@ -740,11 +753,11 @@
         "last_run": "Letzte Ausführung",
         "last_run_reset": "Als nächstes ausführen",
         "mailbox": "Mailbox",
+        "mailbox_defaults": "Standardeinstellungen",
+        "mailbox_defaults_info": "Steuert die Standardeinstellungen für neue Mailboxen.",
         "mailbox_defquota": "Standard-Quota",
         "mailbox_quota": "Max. Größe einer Mailbox",
         "mailboxes": "Mailboxen",
-        "mailbox_defaults": "Standardeinstellungen",
-        "mailbox_defaults_info": "Steuert die Standardeinstellungen für neue Mailboxen.",
         "mins_interval": "Intervall (min)",
         "msg_num": "Anzahl Nachrichten",
         "multiple_bookings": "Mehrfachbuchen",
@@ -758,8 +771,8 @@
         "q_add_header": "bei Mail in Junk-Ordner",
         "q_all": "bei Reject und Mail in Junk-Ordner",
         "q_reject": "bei Reject",
-        "quarantine_notification": "Quarantäne-Benachrichtigung",
         "quarantine_category": "Quarantäne-Benachrichtigungskategorie",
+        "quarantine_notification": "Quarantäne-Benachrichtigung",
         "quick_actions": "Aktionen",
         "recipient_map": "Empfängerumschreibung",
         "recipient_map_info": "Empfängerumschreibung ersetzen den Empfänger einer E-Mail vor dem Versand.",
@@ -802,8 +815,8 @@
         "tls_map_parameters_info": "Leer oder Parameter, Beispiele: protocols=!SSLv2 ciphers=medium exclude=3DES",
         "tls_map_policy": "Richtlinie",
         "tls_policy_maps": "TLS-Richtlinien",
-        "tls_policy_maps_info": "Nachstehende Richtlinien erzwingen TLS-Transportregeln unabhängig von TLS-Richtlinieneinstellungen eines Benutzers.<br>\r\n  Für weitere Informationen zur Syntax sollte <a href=\"http://www.postfix.org/postconf.5.html#smtp_tls_policy_maps\" target=\"_blank\">die \"smtp_tls_policy_maps\" Dokumentation</a> konsultiert werden.",
         "tls_policy_maps_enforced_tls": "Die Richtlinien überschreiben auch das Verhalten für Mailbox-Benutzer, die für ausgehende Verbindungen TLS erzwingen. Ist keine Policy nachstehend konfiguriert, richtet sich der Standard für diese Benutzer sich nach den Werten <code>smtp_tls_mandatory_protocols</code> und <code>smtp_tls_mandatory_ciphers</code>.",
+        "tls_policy_maps_info": "Nachstehende Richtlinien erzwingen TLS-Transportregeln unabhängig von TLS-Richtlinieneinstellungen eines Benutzers.<br>\r\n  Für weitere Informationen zur Syntax sollte <a href=\"http://www.postfix.org/postconf.5.html#smtp_tls_policy_maps\" target=\"_blank\">die \"smtp_tls_policy_maps\" Dokumentation</a> konsultiert werden.",
         "tls_policy_maps_long": "Ausgehende TLS-Richtlinien",
         "toggle_all": "Alle",
         "username": "Benutzername",
@@ -829,7 +842,6 @@
         "danger": "Gefahr",
         "deliver_inbox": "In Posteingang zustellen",
         "disabled_by_config": "Die derzeitige Konfiguration deaktiviert die Funktion des Quarantäne-Systems. Zur Funktion muss eine Anzahl an Rückhaltungen pro Mailbox sowie ein Limit für die maximale Größe pro Element definiert werden.",
-        "settings_info": "Maximale Anzahl der zurückgehaltenen E-Mails: %s<br>Maximale Größe einer zu speichernden E-Mail: %s MiB",
         "download_eml": "Herunterladen (.eml)",
         "empty": "Keine Einträge",
         "high_danger": "Hoch",
@@ -846,6 +858,9 @@
         "qitem": "Quarantäneeintrag",
         "quarantine": "Quarantäne",
         "quick_actions": "Aktionen",
+        "quick_delete_link": "Quick-Delete Link öffnen",
+        "quick_info_link": "Element-Info Link öffnen",
+        "quick_release_link": "Quick-Release Link öffnen",
         "rcpt": "Empfänger",
         "received": "Empfangen",
         "recipients": "Empfänger",
@@ -857,21 +872,19 @@
         "remove": "Entfernen",
         "rewrite_subject": "Betreff geändert",
         "rspamd_result": "Rspamd-Ergebnis",
-        "quick_release_link": "Quick-Release Link öffnen",
-        "quick_delete_link": "Quick-Delete Link öffnen",
-        "quick_info_link": "Element-Info Link öffnen",
         "sender": "Sender (SMTP)",
         "sender_header": "Sender (\"From\"-Header)",
+        "settings_info": "Maximale Anzahl der zurückgehaltenen E-Mails: %s<br>Maximale Größe einer zu speichernden E-Mail: %s MiB",
         "show_item": "Details",
         "spam": "Spam",
         "spam_score": "Bewertung",
         "subj": "Betreff",
-        "type": "Typ",
         "table_size": "Tabellengröße",
         "table_size_show_n": "Zeige %s Einträge",
         "text_from_html_content": "Inhalt (html, konvertiert)",
         "text_plain_content": "Inhalt (text/plain)",
-        "toggle_all": "Alle auswählen"
+        "toggle_all": "Alle auswählen",
+        "type": "Typ"
     },
     "start": {
         "help": "Hilfe ein-/ausblenden",
@@ -930,9 +943,9 @@
         "mailbox_removed": "Mailbox %s wurde entfernt",
         "nginx_reloaded": "Nginx wurde neu geladen",
         "object_modified": "Änderungen an Objekt %s wurden gespeichert",
+        "password_policy_saved": "Passwortrichtlinie wurde erfolgreich gespeichert",
         "pushover_settings_edited": "Pushover-Konfiguration gespeichert, bitte den Zugang im Anschluss verifizieren.",
         "qlearn_spam": "Nachricht-ID %s wurde als Spam gelernt und gelöscht",
-        "password_policy_saved": "Passwortrichtlinie wurde erfolgreich gespeichert",
         "queue_command_success": "Queue-Aufgabe erfolgreich ausgeführt",
         "recipient_map_entry_deleted": "Empfängerumschreibung mit der ID %s wurde gelöscht",
         "recipient_map_entry_saved": "Empfängerumschreibung für Objekt \"%s\" wurde gespeichert",
@@ -952,13 +965,13 @@
         "tls_policy_map_entry_saved": "TLS-Richtlinieneintrag \"%s\" wurde gespeichert",
         "ui_texts": "Änderungen an UI-Texten",
         "upload_success": "Datei wurde erfolgreich hochgeladen",
+        "verified_fido2_login": "FIDO2-Anmeldung verifiziert",
         "verified_totp_login": "TOTP-Anmeldung verifiziert",
         "verified_u2f_login": "U2F-Anmeldung verifiziert",
-        "verified_fido2_login": "FIDO2-Anmeldung verifiziert",
         "verified_yotp_login": "Yubico-OTP-Anmeldung verifiziert",
-        "xmpp_restarted": "XMPP-Dienst wurde neu gestartet",
+        "xmpp_maps_updated": "XMPP-Maps wurden aktualisiert",
         "xmpp_reloaded": "XMPP-Dienst wurde neu geladen",
-        "xmpp_maps_updated": "XMPP-Maps wurden aktualisiert"
+        "xmpp_restarted": "XMPP-Dienst wurde neu gestartet"
     },
     "tfa": {
         "api_register": "%s verwendet die Yubico-Cloud-API. Ein API-Key für den Yubico-Stick kann <a href=\"https://upgrade.yubico.com/getapikey/\" target=\"_blank\">hier</a> bezogen werden.",
@@ -985,20 +998,6 @@
         "waiting_usb_register": "<i>Warte auf USB-Gerät...</i><br><br>Bitte zuerst das obere Passwortfeld ausfüllen und erst dann den vorgesehenen Taster des USB-Gerätes berühren.",
         "yubi_otp": "Yubico OTP-Authentifizierung"
     },
-    "fido2": {
-        "set_fn": "Benutzerfreundlichen Namen konfigurieren",
-        "fn": "Benutzerfreundlicher Name",
-        "rename": "Umbenennen",
-        "confirm": "Bestätigen",
-        "register_status": "Registrierungsstatus",
-        "known_ids": "Bekannte IDs",
-        "none": "Deaktiviert",
-        "set_fido2": "Registriere FIDO2-Gerät",
-        "start_fido2_validation": "Starte FIDO2-Validierung",
-        "fido2_auth": "Anmeldung über FIDO2",
-        "fido2_success": "Das Gerät wurde erfolgreich registriert",
-        "fido2_validation_failed": "Validierung fehlgeschlagen"
-    },
     "user": {
         "action": "Aktion",
         "active": "Aktiv",
@@ -1021,6 +1020,7 @@
         "apple_connection_profile_complete": "Dieses Verbindungsprofil beinhaltet neben IMAP- und SMTP-Konfigurationen auch Pfade für die Konfiguration von CalDAV (Kalender) und CardDAV (Adressbücher) für ein Apple-Gerät.",
         "apple_connection_profile_mailonly": "Dieses Verbindungsprofil beinhaltet IMAP- und SMTP-Konfigurationen für ein Apple-Gerät.",
         "change_password": "Passwort ändern",
+        "clear_recent_successful_connections": "Alle erfolgreichen Verbindungen bereinigen",
         "client_configuration": "Konfigurationsanleitungen für E-Mail-Programme und Smartphones anzeigen",
         "create_app_passwd": "Erstelle App-Passwort",
         "create_syncjob": "Neuen Sync-Job erstellen",
@@ -1034,16 +1034,15 @@
         "eas_reset_help": "In vielen Fällen kann ein ActiveSync-Profil durch das Zurücksetzen des Caches repariert werden.<br><b>Vorsicht:</b> Alle Elemente werden erneut heruntergeladen!",
         "eas_reset_now": "Jetzt zurücksetzen",
         "edit": "Bearbeiten",
-        "empty": "Keine Einträge vorhanden",
         "email": "E-Mail",
         "email_and_dav": "E-Mail, Kalender und Adressbücher",
+        "empty": "Keine Einträge vorhanden",
         "encryption": "Verschlüsselung",
         "excludes": "Ausschlüsse",
         "expire_in": "Ungültig in",
+        "fido2_webauthn": "FIDO2/WebAuthn",
         "force_pw_update": "Das Passwort für diesen Benutzer <b>muss</b> geändert werden, damit die Zugriffssperre auf die Groupware-Komponenten wieder freigeschaltet wird.",
         "from": "von",
-        "recent_successful_connections": "Kürzlich erfolgreiche Verbindungen",
-        "clear_recent_successful_connections": "Alle erfolgreichen Verbindungen bereinigen",
         "generate": "generieren",
         "hour": "Stunde",
         "hourly": "Stündlich",
@@ -1052,12 +1051,15 @@
         "interval": "Intervall",
         "is_catch_all": "Ist Catch-All-Adresse für Domain(s)",
         "last_mail_login": "Letzter Mail-Login",
-        "last_run": "Letzte Ausführung",
         "last_pw_change": "Letzte Passwortänderung",
+        "last_run": "Letzte Ausführung",
         "last_ui_login": "Letzte UI Anmeldung",
-        "login_history": "Login-Historie",
         "loading": "Lade...",
-        "mailbox_details": "Mailbox-Details",
+        "login_history": "Login-Historie",
+        "mailbox": "Mailbox",
+        "mailbox_details": "Details",
+        "mailbox_general": "Allgemein",
+        "mailbox_settings": "Einstellungen",
         "messages": "Nachrichten",
         "month": "Monat",
         "months": "Monate",
@@ -1082,10 +1084,11 @@
         "q_add_header": "Junk-Ordner",
         "q_all": "Alle Kategorien",
         "q_reject": "Abgelehnt",
-        "quarantine_notification": "Quarantäne-Benachrichtigung",
         "quarantine_category": "Quarantäne-Benachrichtigungskategorie",
-        "quarantine_notification_info": "Wurde über eine E-Mail in Quarantäne informiert, wird sie als \"benachrichtigt\" markiert und keine weitere Benachrichtigung zu dieser E-Mail versendet.",
         "quarantine_category_info": "Die Kategorie \"Abgelehnt\" informiert über abgelehnte E-Mails, während \"Junk-Ordner\" über E-Mails berichtet, die im Junk-Ordner des jeweiligen Benutzers abgelegt wurden.",
+        "quarantine_notification": "Quarantäne-Benachrichtigung",
+        "quarantine_notification_info": "Wurde über eine E-Mail in Quarantäne informiert, wird sie als \"benachrichtigt\" markiert und keine weitere Benachrichtigung zu dieser E-Mail versendet.",
+        "recent_successful_connections": "Kürzlich erfolgreiche Verbindungen",
         "remove": "Entfernen",
         "running": "Wird ausgeführt",
         "save": "Änderungen speichern",
@@ -1153,4 +1156,4 @@
         "session_token": "Formular-Token ungültig: Token stimmt nicht überein",
         "session_ua": "Formular-Token ungültig: User-Agent-Validierungsfehler"
     }
-}
+}

+ 89 - 86
data/web/lang/lang.en.json

@@ -4,17 +4,20 @@
         "app_passwds": "Manage app passwords",
         "bcc_maps": "BCC maps",
         "delimiter_action": "Delimiter action",
+        "domain_desc": "Change domain description",
+        "domain_relayhost": "Change relayhost for a domain",
         "eas_reset": "Reset EAS devices",
         "extend_sender_acl": "Allow to extend sender ACL by external addresses",
         "filters": "Filters",
         "login_as": "Login as mailbox user",
+        "mailbox_relayhost": "Change relayhost for a mailbox",
         "prohibited": "Prohibited by ACL",
         "protocol_access": "Change protocol access",
         "pushover": "Pushover",
         "quarantine": "Quarantine actions",
         "quarantine_attachments": "Quarantine attachments",
-        "quarantine_notification": "Change quarantine notifications",
         "quarantine_category": "Change quarantine notification category",
+        "quarantine_notification": "Change quarantine notifications",
         "ratelimit": "Rate limit",
         "recipient_maps": "Recipient maps",
         "smtp_ip_access": "Change allowed hosts for SMTP",
@@ -26,9 +29,6 @@
         "syncjobs": "Sync jobs",
         "tls_policy": "TLS policy",
         "unlimited_quota": "Unlimited quota for mailboxes",
-        "domain_desc": "Change domain description",
-        "mailbox_relayhost": "Change relayhost for a mailbox",
-        "domain_relayhost": "Change relayhost for a domain",
         "xmpp_admin": "Promote XMPP user to administrator",
         "xmpp_domain_access": "Configure XMPP domain access",
         "xmpp_mailbox_access": "Configure XMPP user access",
@@ -65,12 +65,6 @@
         "full_name": "Full name",
         "gal": "Global Address List",
         "gal_info": "The GAL contains all objects of a domain and cannot be edited by any user. Free/busy information in SOGo is missing, if disabled! <b>Restart SOGo to apply changes.</b>",
-        "xmpp": "Activate XMPP for this domain",
-        "xmpp_info": "This function will enable chat functionality for this domain.",
-        "xmpp_access": "XMPP access",
-        "xmpp_access_info": "XMPP must be enabled for this domain.",
-        "xmpp_admin": "XMPP administrator",
-        "xmpp_admin_info": "<b>Danger:</b> Promotes a user to an XMPP administrator of this domain.",
         "generate": "generate",
         "goto_ham": "Learn as <span class=\"text-success\"><b>ham</b></span>",
         "goto_null": "Silently discard mail",
@@ -114,13 +108,15 @@
         "timeout2": "Timeout for connection to local host",
         "username": "Username",
         "validate": "Validate",
-        "validation_success": "Validated successfully"
+        "validation_success": "Validated successfully",
+        "xmpp": "Activate XMPP for this domain",
+        "xmpp_access": "XMPP access",
+        "xmpp_access_info": "XMPP must be enabled for this domain.",
+        "xmpp_admin": "XMPP administrator",
+        "xmpp_admin_info": "<b>Danger:</b> Promotes a user to an XMPP administrator of this domain.",
+        "xmpp_info": "This function will enable chat functionality for this domain."
     },
     "admin": {
-        "success": "Success",
-        "service": "Service",
-        "login_time": "Login time",
-        "username": "Username",
         "access": "Access",
         "action": "Action",
         "activate_api": "Activate API",
@@ -139,10 +135,10 @@
         "add_transports_hint": "Please be aware that authentication data, if any, will be stored as plain text.",
         "additional_rows": " additional rows were added",
         "admin": "Administrator",
-        "admins": "Administrators",
-        "admins_ldap": "LDAP Administrators",
         "admin_details": "Edit administrator details",
         "admin_domains": "Domain assignments",
+        "admins": "Administrators",
+        "admins_ldap": "LDAP Administrators",
         "advanced_settings": "Advanced settings",
         "api_allow_from": "Allow API access from these IPs/CIDR network notations",
         "api_info": "The API is a work in progress. The documentation can be found at <a href=\"/api\">/api</a>",
@@ -212,16 +208,17 @@
         "html": "HTML",
         "import": "Import",
         "import_private_key": "Import private key",
-        "is_mx_based": "MX based",
         "in_use_by": "In use by",
         "inactive": "Inactive",
         "include_exclude": "Include/Exclude",
         "include_exclude_info": "By default - with no selection - <b>all mailboxes</b> are addressed",
         "includes": "Include these recipients",
+        "is_mx_based": "MX based",
         "last_applied": "Last applied",
         "license_info": "A license is not required but helps further development.<br><a href=\"https://www.servercow.de/mailcow?lang=en#sal\" target=\"_blank\" alt=\"SAL order\">Register your GUID here</a> or <a href=\"https://www.servercow.de/mailcow?lang=en#support\" target=\"_blank\" alt=\"Support order\">buy support for your mailcow installation.</a>",
         "link": "Link",
         "loading": "Please wait...",
+        "login_time": "Login time",
         "logo_info": "Your image will be scaled to a height of 40px for the top navigation bar and a max. width of 250px for the start page. A scalable graphic is highly recommended.",
         "lookup_mx": "Destination is a regular expression to match against MX name (<code>.*google\\.com</code> to route all mail targeted to a MX ending in google.com over this hop)",
         "main_name": "\"mailcow UI\" name",
@@ -245,8 +242,8 @@
         "password_policy": "Password policy",
         "password_policy_chars": "Must contain at least one alphabetic character",
         "password_policy_length": "Minimum password length is %d",
-        "password_policy_numbers": "Must contain at least one number",
         "password_policy_lowerupper": "Must contain lowercase and uppercase characters",
+        "password_policy_numbers": "Must contain at least one number",
         "password_policy_special_chars": "Must contain special characters",
         "password_repeat": "Confirmation password (repeat)",
         "priority": "Priority",
@@ -255,8 +252,8 @@
         "quarantine_bcc": "Send a copy of all notifications (BCC) to this recipient:<br><small>Leave empty to disable. <b>Unsigned, unchecked mail. Should be delivered internally only.</b></small>",
         "quarantine_exclude_domains": "Exclude domains and alias-domains",
         "quarantine_max_age": "Maximum age in days<br><small>Value must be equal to or greater than 1 day.</small>",
-        "quarantine_max_size": "Maximum size in MiB (larger elements are discarded):<br><small>0 does <b>not</b> indicate unlimited.</small>",
         "quarantine_max_score": "Discard notification if spam score of a mail is higher than this value:<br><small>Defaults to 9999.0</small>",
+        "quarantine_max_size": "Maximum size in MiB (larger elements are discarded):<br><small>0 does <b>not</b> indicate unlimited.</small>",
         "quarantine_notification_html": "Notification email template:<br><small>Leave empty to restore default template.</small>",
         "quarantine_notification_sender": "Notification email sender",
         "quarantine_notification_subject": "Notification email subject",
@@ -269,9 +266,9 @@
         "queue_deliver_mail": "Deliver",
         "queue_hold_mail": "Hold",
         "queue_manager": "Queue manager",
+        "queue_show_message": "Show message",
         "queue_unban": "queue unban",
         "queue_unhold_mail": "Unhold",
-        "queue_show_message": "Show message",
         "quota_notification_html": "Notification email template:<br><small>Leave empty to restore default template.</small>",
         "quota_notification_sender": "Notification email sender",
         "quota_notification_subject": "Notification email subject",
@@ -316,10 +313,12 @@
         "search_domain_da": "Search domains",
         "send": "Send",
         "sender": "Sender",
+        "service": "Service",
         "service_id": "Service ID",
         "source": "Source",
         "spamfilter": "Spam filter",
         "subject": "Subject",
+        "success": "Success",
         "sys_mails": "System mails",
         "text": "Text",
         "time": "Time",
@@ -328,8 +327,8 @@
         "to_top": "Back to top",
         "transport_dest_format": "Regex or syntax: example.org, .example.org, *, box@example.org (multiple values can be comma-separated)",
         "transport_maps": "Transport Maps",
-        "transports_hint": "&#8226; A transport map entry <b>overrules</b> a sender-dependent transport map</b>.<br>\r\n&#8226; MX-based transports are preferably used.<br>\r\n&#8226; Outbound TLS policy settings per-user are ignored and can only be enforced by TLS policy map entries.<br>\r\n&#8226; The transport service for defined transports is always \"smtp:\" and will therefore try TLS when offered. Wrapped TLS (SMTPS) is not supported.<br>\r\n&#8226; Addresses matching \"/localhost$/\" will always be transported via \"local:\", therefore a \"*\" destination will not apply to those addresses.<br>\r\n&#8226; To determine credentials for an exemplary next hop \"[host]:25\", Postfix <b>always</b> queries for \"host\" before searching for \"[host]:25\". This behavior makes it impossible to use \"host\" and \"[host]:25\" at the same time.",
         "transport_test_rcpt_info": "&#8226; Use null@hosted.mailcow.de to test relaying to a foreign destination.",
+        "transports_hint": "&#8226; A transport map entry <b>overrules</b> a sender-dependent transport map</b>.<br>\r\n&#8226; MX-based transports are preferably used.<br>\r\n&#8226; Outbound TLS policy settings per-user are ignored and can only be enforced by TLS policy map entries.<br>\r\n&#8226; The transport service for defined transports is always \"smtp:\" and will therefore try TLS when offered. Wrapped TLS (SMTPS) is not supported.<br>\r\n&#8226; Addresses matching \"/localhost$/\" will always be transported via \"local:\", therefore a \"*\" destination will not apply to those addresses.<br>\r\n&#8226; To determine credentials for an exemplary next hop \"[host]:25\", Postfix <b>always</b> queries for \"host\" before searching for \"[host]:25\". This behavior makes it impossible to use \"host\" and \"[host]:25\" at the same time.",
         "ui_footer": "Footer (HTML allowed)",
         "ui_header_announcement": "Announcements",
         "ui_header_announcement_active": "Set announcement active",
@@ -337,9 +336,9 @@
         "ui_header_announcement_help": "The announcement is visible for all logged in users and on the login screen of the UI.",
         "ui_header_announcement_select": "Select announcement type",
         "ui_header_announcement_type": "Type",
+        "ui_header_announcement_type_danger": "Very important",
         "ui_header_announcement_type_info": "Info",
         "ui_header_announcement_type_warning": "Important",
-        "ui_header_announcement_type_danger": "Very important",
         "ui_texts": "UI labels and texts",
         "unban_pending": "unban pending",
         "unchanged_if_empty": "If unchanged leave blank",
@@ -375,13 +374,13 @@
         "domain_quota_m_in_use": "Domain quota must be greater or equal to %s MiB",
         "extra_acl_invalid": "External sender address \"%s\" is invalid",
         "extra_acl_invalid_domain": "External sender \"%s\" uses an invalid domain",
+        "fido2_verification_failed": "FIDO2 verification failed: %s",
         "file_open_error": "File cannot be opened for writing",
         "filter_type": "Wrong filter type",
         "from_invalid": "Sender must not be empty",
         "global_filter_write_error": "Could not write filter file: %s",
         "global_map_invalid": "Global map ID %s invalid",
         "global_map_write_error": "Could not write global map ID %s: %s",
-        "xmpp_map_write_error": "Could not write XMPP map: %s",
         "goto_empty": "An alias address must contain at least one valid goto address",
         "goto_invalid": "Goto address %s is invalid",
         "ham_learn_error": "Ham learn error: %s",
@@ -416,10 +415,10 @@
         "max_quota_in_use": "Mailbox quota must be greater or equal to %d MiB",
         "maxquota_empty": "Max. quota per mailbox must not be 0.",
         "mysql_error": "MySQL error: %s",
-        "nginx_reload_failed": "Nginx reload failed: %s",
         "network_host_invalid": "Invalid network or host: %s",
         "next_hop_interferes": "%s interferes with nexthop %s",
         "next_hop_interferes_any": "An existing next hop interferes with %s",
+        "nginx_reload_failed": "Nginx reload failed: %s",
         "no_user_defined": "No user defined",
         "object_exists": "Object %s already exists",
         "object_is_not_numeric": "Value %s is not numeric",
@@ -460,52 +459,52 @@
         "totp_verification_failed": "TOTP verification failed",
         "transport_dest_exists": "Transport destination \"%s\" exists",
         "u2f_verification_failed": "U2F verification failed: %s",
-        "fido2_verification_failed": "FIDO2 verification failed: %s",
         "unknown": "An unknown error occurred",
         "unknown_tfa_method": "Unknown TFA method",
         "unlimited_quota_acl": "Unlimited quota prohibited by ACL",
         "username_invalid": "Username %s cannot be used",
         "validity_missing": "Please assign a period of validity",
         "value_missing": "Please provide all values",
-        "yotp_verification_failed": "Yubico OTP verification failed: %s",
+        "xmpp_map_write_error": "Could not write XMPP map: %s",
+        "xmpp_reload_failed": "XMPP could not be reloaded",
         "xmpp_restart_failed": "XMPP could not be restarted",
-        "xmpp_reload_failed": "XMPP could not be reloaded"
+        "yotp_verification_failed": "Yubico OTP verification failed: %s"
     },
     "debug": {
         "chart_this_server": "Chart (this server)",
         "containers_info": "Container information",
         "disk_usage": "Disk usage",
+        "docs": "Docs",
         "external_logs": "External logs",
         "history_all_servers": "History (all servers)",
         "in_memory_logs": "In-memory logs",
         "jvm_memory_solr": "JVM memory usage",
+        "last_modified": "Last modified",
         "log_info": "<p>mailcow <b>in-memory logs</b> are collected in Redis lists and trimmed to LOG_LINES (%d) every minute to reduce hammering.\r\n  <br>In-memory logs are not meant to be persistent. All applications that log in-memory, also log to the Docker daemon and therefore to the default logging driver.\r\n  <br>The in-memory log type should be used for debugging minor issues with containers.</p>\r\n  <p><b>External logs</b> are collected via API of the given application.</p>\r\n  <p><b>Static logs</b> are mostly activity logs, that are not logged to the Dockerd but still need to be persistent (except for API logs).</p>",
+        "login_time": "Time",
         "logs": "Logs",
-        "restart_container": "Restart",
-        "solr_dead": "Solr is starting, disabled or died.",
-        "xmpp_dead": "XMPP is starting, disabled or died.",
-        "docs": "Docs",
-        "last_modified": "Last modified",
         "online_users": "Users online",
+        "restart_container": "Restart",
+        "service": "Service",
         "size": "Size",
-        "started_at": "Started at",
+        "solr_dead": "Solr is starting, disabled or died.",
         "solr_status": "Solr status",
+        "started_at": "Started at",
         "started_on": "Started on",
-        "uptime": "Uptime",
-        "success": "Success",
-        "service": "Service",
-        "login_time": "Time",
-        "username": "Username",
         "static_logs": "Static logs",
+        "success": "Success",
         "system_containers": "System & Containers",
+        "uptime": "Uptime",
+        "username": "Username",
+        "xmpp_dead": "XMPP is starting, disabled or died.",
         "xmpp_status": "XMPP status"
     },
     "diagnostics": {
         "cname_from_a": "Value derived from A/AAAA record. This is supported as long as the record points to the correct resource.",
         "dns_records": "DNS Records",
         "dns_records_24hours": "Please note that changes made to DNS may take up to 24 hours to correctly have their current state reflected on this page. It is intended as a way for you to easily see how to configure your DNS records and to check whether all your records are correctly stored in DNS.",
-        "dns_records_docs": "Please also consult <a target=\"_blank\" href=\"https://mailcow.github.io/mailcow-dockerized-docs/prerequisite-dns/\">the documentation</a>.",
         "dns_records_data": "Correct Data",
+        "dns_records_docs": "Please also consult <a target=\"_blank\" href=\"https://mailcow.github.io/mailcow-dockerized-docs/prerequisite-dns/\">the documentation</a>.",
         "dns_records_name": "Name",
         "dns_records_status": "Current State",
         "dns_records_type": "Type",
@@ -548,15 +547,6 @@
         "full_name": "Full name",
         "gal": "Global Address List",
         "gal_info": "The GAL contains all objects of a domain and cannot be edited by any user. Free/busy information in SOGo is missing, if disabled! <b>Restart SOGo to apply changes.</b>",
-        "xmpp": "Activate XMPP for this domain",
-        "xmpp_prefix": "XMPP prefix for domain (\"im\" to use <b>im</b>.example.org)",
-        "xmpp_prefix_info": "To request certificates for XMPP, two CNAME DNS records should point from <b>im</b>.example.org as well as <b>*.im</b>.example.org to <b>%s</b>. Please also run the DNS check for this domain after enabling XMPP.",
-        "xmpp_info": "This function will enable chat functionality for this domain.",
-        "xmpp_access": "XMPP access",
-        "xmpp_access_info": "XMPP must be enabled for this domain.",
-        "xmpp_admin": "XMPP administrator",
-        "xmpp_admin_info": "<b>Danger:</b> Promotes a user to an XMPP administrator of this domain.",
-        "xmpp_example_jid": "<b>Example JID</b> (login with mailbox password)",
         "generate": "generate",
         "grant_types": "Grant types",
         "hostname": "Hostname",
@@ -627,7 +617,30 @@
         "title": "Edit object",
         "unchanged_if_empty": "If unchanged leave blank",
         "username": "Username",
-        "validate_save": "Validate and save"
+        "validate_save": "Validate and save",
+        "xmpp": "Activate XMPP for this domain",
+        "xmpp_access": "XMPP access",
+        "xmpp_access_info": "XMPP must be enabled for this domain.",
+        "xmpp_admin": "XMPP administrator",
+        "xmpp_admin_info": "<b>Danger:</b> Promotes a user to an XMPP administrator of this domain.",
+        "xmpp_example_jid": "<b>Example JID</b> (login with mailbox password)",
+        "xmpp_info": "This function will enable chat functionality for this domain.",
+        "xmpp_prefix": "XMPP prefix for domain (\"im\" to use <b>im</b>.example.org)",
+        "xmpp_prefix_info": "To request certificates for XMPP, two CNAME DNS records should point from <b>im</b>.example.org as well as <b>*.im</b>.example.org to <b>%s</b>. Please also run the DNS check for this domain after enabling XMPP."
+    },
+    "fido2": {
+        "confirm": "Confirm",
+        "fido2_auth": "Login with FIDO2",
+        "fido2_success": "Device successfully registered",
+        "fido2_validation_failed": "Validation failed",
+        "fn": "Friendly name",
+        "known_ids": "Known IDs",
+        "none": "Disabled",
+        "register_status": "Registration status",
+        "rename": "Rename",
+        "set_fido2": "Register FIDO2 device",
+        "set_fn": "Set friendly name",
+        "start_fido2_validation": "Start FIDO2 validation"
     },
     "footer": {
         "cancel": "Cancel",
@@ -738,11 +751,11 @@
         "last_run": "Last run",
         "last_run_reset": "Schedule next",
         "mailbox": "Mailbox",
+        "mailbox_defaults": "Default settings",
+        "mailbox_defaults_info": "Define default settings for new mailboxes.",
         "mailbox_defquota": "Default mailbox size",
         "mailbox_quota": "Max. size of a mailbox",
         "mailboxes": "Mailboxes",
-        "mailbox_defaults": "Default settings",
-        "mailbox_defaults_info": "Define default settings for new mailboxes.",
         "mins_interval": "Interval (min)",
         "msg_num": "Message #",
         "multiple_bookings": "Multiple bookings",
@@ -756,8 +769,8 @@
         "q_add_header": "when moved to Junk folder",
         "q_all": " when moved to Junk folder and on reject",
         "q_reject": "on reject",
-        "quarantine_notification": "Quarantine notifications",
         "quarantine_category": "Quarantine notification category",
+        "quarantine_notification": "Quarantine notifications",
         "quick_actions": "Actions",
         "recipient_map": "Recipient map",
         "recipient_map_info": "Recipient maps are used to replace the destination address on a message before it is delivered.",
@@ -800,8 +813,8 @@
         "tls_map_parameters_info": "Empty or parameters, for example: protocols=!SSLv2 ciphers=medium exclude=3DES",
         "tls_map_policy": "Policy",
         "tls_policy_maps": "TLS policy maps",
-        "tls_policy_maps_info": "This policy map overrides outgoing TLS transport rules independently of a user's TLS policy settings.<br>\r\n  Please check <a href=\"http://www.postfix.org/postconf.5.html#smtp_tls_policy_maps\" target=\"_blank\">the \"smtp_tls_policy_maps\" docs</a> for further information.",
         "tls_policy_maps_enforced_tls": "These policies will also override the behaviour for mailbox users that enforce outgoing TLS connections. If no policy exists below, these users will apply the default values specified as <code>smtp_tls_mandatory_protocols</code> and <code>smtp_tls_mandatory_ciphers</code>.",
+        "tls_policy_maps_info": "This policy map overrides outgoing TLS transport rules independently of a user's TLS policy settings.<br>\r\n  Please check <a href=\"http://www.postfix.org/postconf.5.html#smtp_tls_policy_maps\" target=\"_blank\">the \"smtp_tls_policy_maps\" docs</a> for further information.",
         "tls_policy_maps_long": "Outgoing TLS policy map overrides",
         "toggle_all": "Toggle all",
         "username": "Username",
@@ -827,7 +840,6 @@
         "danger": "Danger",
         "deliver_inbox": "Deliver to inbox",
         "disabled_by_config": "The current system configuration disables the quarantine functionality. Please set \"retentions per mailbox\" and a \"maximum size\" for quarantine elements.",
-        "settings_info": "Maximum amount of elements to be quarantined: %s<br>Maximum email size: %s MiB",
         "download_eml": "Download (.eml)",
         "empty": "No results",
         "high_danger": "High",
@@ -844,6 +856,9 @@
         "qitem": "Quarantine item",
         "quarantine": "Quarantine",
         "quick_actions": "Actions",
+        "quick_delete_link": "Open quick delete link",
+        "quick_info_link": "Open info link",
+        "quick_release_link": "Open quick release link",
         "rcpt": "Recipient",
         "received": "Received",
         "recipients": "Recipients",
@@ -857,10 +872,7 @@
         "rspamd_result": "Rspamd result",
         "sender": "Sender (SMTP)",
         "sender_header": "Sender (\"From\" header)",
-        "type": "Type",
-        "quick_release_link": "Open quick release link",
-        "quick_delete_link": "Open quick delete link",
-        "quick_info_link": "Open info link",
+        "settings_info": "Maximum amount of elements to be quarantined: %s<br>Maximum email size: %s MiB",
         "show_item": "Show item",
         "spam": "Spam",
         "spam_score": "Score",
@@ -869,7 +881,8 @@
         "table_size_show_n": "Show %s items",
         "text_from_html_content": "Content (converted html)",
         "text_plain_content": "Content (text/plain)",
-        "toggle_all": "Toggle all"
+        "toggle_all": "Toggle all",
+        "type": "Type"
     },
     "start": {
         "help": "Show/Hide help panel",
@@ -928,10 +941,10 @@
         "mailbox_removed": "Mailbox %s has been removed",
         "nginx_reloaded": "Nginx was reloaded",
         "object_modified": "Changes to object %s have been saved",
+        "password_policy_saved": "Password policy was saved successfully",
         "pushover_settings_edited": "Pushover settings successfully set, please verify credentials.",
         "qlearn_spam": "Message ID %s was learned as spam and deleted",
         "queue_command_success": "Queue command completed successfully",
-        "password_policy_saved": "Password policy was saved successfully",
         "recipient_map_entry_deleted": "Recipient map ID %s has been deleted",
         "recipient_map_entry_saved": "Recipient map entry \"%s\" has been saved",
         "relayhost_added": "Map entry %s has been added",
@@ -950,13 +963,13 @@
         "tls_policy_map_entry_saved": "TLS policy map entry \"%s\" has been saved",
         "ui_texts": "Saved changes to UI texts",
         "upload_success": "File uploaded successfully",
+        "verified_fido2_login": "Verified FIDO2 login",
         "verified_totp_login": "Verified TOTP login",
         "verified_u2f_login": "Verified U2F login",
-        "verified_fido2_login": "Verified FIDO2 login",
         "verified_yotp_login": "Verified Yubico OTP login",
-        "xmpp_restarted": "XMPP service was restarted",
+        "xmpp_maps_updated": "XMPP maps were updated",
         "xmpp_reloaded": "XMPP service was reloaded",
-        "xmpp_maps_updated": "XMPP maps were updated"
+        "xmpp_restarted": "XMPP service was restarted"
     },
     "tfa": {
         "api_register": "%s uses the Yubico Cloud API. Please get an API key for your key <a href=\"https://upgrade.yubico.com/getapikey/\" target=\"_blank\">here</a>",
@@ -983,20 +996,6 @@
         "waiting_usb_register": "<i>Waiting for USB device...</i><br><br>Please enter your password above and confirm your registration by tapping the button on your USB device.",
         "yubi_otp": "Yubico OTP authentication"
     },
-    "fido2": {
-        "set_fn": "Set friendly name",
-        "fn": "Friendly name",
-        "rename": "Rename",
-        "confirm": "Confirm",
-        "register_status": "Registration status",
-        "known_ids": "Known IDs",
-        "none": "Disabled",
-        "set_fido2": "Register FIDO2 device",
-        "start_fido2_validation": "Start FIDO2 validation",
-        "fido2_auth": "Login with FIDO2",
-        "fido2_success": "Device successfully registered",
-        "fido2_validation_failed": "Validation failed"
-    },
     "user": {
         "action": "Action",
         "active": "Active",
@@ -1019,6 +1018,7 @@
         "apple_connection_profile_complete": "This connection profile includes IMAP and SMTP parameters as well as CalDAV (calendars) and CardDAV (contacts) paths for an Apple device.",
         "apple_connection_profile_mailonly": "This connection profile includes IMAP and SMTP configuration parameters for an Apple device.",
         "change_password": "Change password",
+        "clear_recent_successful_connections": "Clear seen successful connections",
         "client_configuration": "Show configuration guides for email clients and smartphones",
         "create_app_passwd": "Create app password",
         "create_syncjob": "Create new sync job",
@@ -1032,16 +1032,15 @@
         "eas_reset_help": "In many cases a device cache reset will help to recover a broken ActiveSync profile.<br><b>Attention:</b> All elements will be redownloaded!",
         "eas_reset_now": "Reset now",
         "edit": "Edit",
-        "empty": "No results",
         "email": "Email",
         "email_and_dav": "Email, calendars and contacts",
+        "empty": "No results",
         "encryption": "Encryption",
         "excludes": "Excludes",
         "expire_in": "Expire in",
+        "fido2_webauthn": "FIDO2/WebAuthn",
         "force_pw_update": "You <b>must</b> set a new password to be able to access groupware related services.",
         "from": "from",
-        "recent_successful_connections": "Seen successful connections",
-        "clear_recent_successful_connections": "Clear seen successful connections",
         "generate": "generate",
         "hour": "hour",
         "hourly": "Hourly",
@@ -1050,12 +1049,15 @@
         "interval": "Interval",
         "is_catch_all": "Catch-all for domain/s",
         "last_mail_login": "Last mail login",
-        "last_run": "Last run",
         "last_pw_change": "Last password change",
+        "last_run": "Last run",
         "last_ui_login": "Last UI login",
         "loading": "Loading...",
         "login_history": "Login history",
-        "mailbox_details": "Mailbox details",
+        "mailbox": "Mailbox",
+        "mailbox_details": "Details",
+        "mailbox_general": "General",
+        "mailbox_settings": "Settings",
         "messages": "messages",
         "month": "month",
         "months": "months",
@@ -1080,10 +1082,11 @@
         "q_add_header": "Junk folder",
         "q_all": "All categories",
         "q_reject": "Rejected",
-        "quarantine_notification": "Quarantine notifications",
         "quarantine_category": "Quarantine notification category",
-        "quarantine_notification_info": "Once a notification has been sent, items will be marked as \"notified\" and no further notifications will be sent for this particular item.",
         "quarantine_category_info": "The notification category \"Rejected\" includes mail that was rejected, while \"Junk folder\" will notify a user about mails that were put into the junk folder.",
+        "quarantine_notification": "Quarantine notifications",
+        "quarantine_notification_info": "Once a notification has been sent, items will be marked as \"notified\" and no further notifications will be sent for this particular item.",
+        "recent_successful_connections": "Seen successful connections",
         "remove": "Remove",
         "running": "Running",
         "save": "Save changes",
@@ -1151,4 +1154,4 @@
         "session_token": "Form token invalid: Token mismatch",
         "session_ua": "Form token invalid: User-Agent validation error"
     }
-}
+}