$stmt = $pdo->prepare("SELECT IFNULL(GROUP_CONCAT(`send_as` SEPARATOR ', '), '✘') AS `send_as` FROM `sender_acl` WHERE `logged_in_as` = :username AND `send_as` NOT LIKE '@%';");
$stmt->execute(array(':username' => $username));
$run = $stmt->fetchAll(PDO::FETCH_ASSOC);
while ($row = array_shift($run)) {
$data['aliases_also_send_as'] = $row['send_as'];
}
$stmt = $pdo->prepare("SELECT CONCAT_WS(', ', IFNULL(GROUP_CONCAT(DISTINCT `send_as` SEPARATOR ', '), '✘'), GROUP_CONCAT(DISTINCT CONCAT('@',`alias_domain`) SEPARATOR ', ')) AS `send_as` FROM `sender_acl` LEFT JOIN `alias_domain` ON `alias_domain`.`target_domain` = TRIM(LEADING '@' FROM `send_as`) WHERE `logged_in_as` = :username AND `send_as` LIKE '@%';");
$stmt->execute(array(':username' => $username));
$run = $stmt->fetchAll(PDO::FETCH_ASSOC);
while ($row = array_shift($run)) {
$data['aliases_send_as_all'] = $row['send_as'];
}
$stmt = $pdo->prepare("SELECT IFNULL(GROUP_CONCAT(`address` SEPARATOR ', '), '✘') as `address` FROM `alias` WHERE `goto` REGEXP :username AND `address` LIKE '@%';");
// Return array $data['sender_acl_domains/addresses']['ro'] with read-only objects
// Return array $data['sender_acl_domains/addresses']['rw'] with read-write objects (can be deleted)
$stmt = $pdo->prepare("SELECT REPLACE(`send_as`, '@', '') AS `send_as` FROM `sender_acl` WHERE `logged_in_as` = :logged_in_as AND `external` = '0' AND (`send_as` LIKE '@%' OR `send_as` = '*')");
$stmt->execute(array(':logged_in_as' => $_data));
$domain_rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
while ($domain_row = array_shift($domain_rows)) {
if (is_valid_domain_name($domain_row['send_as']) && !hasDomainAccess($_SESSION['mailcow_cc_username'], $_SESSION['mailcow_cc_role'], $domain_row['send_as'])) {
$stmt = $pdo->prepare("SELECT `send_as` FROM `sender_acl` WHERE `logged_in_as` = :logged_in_as AND `external` = '0' AND (`send_as` NOT LIKE '@%' AND `send_as` != '*')");
$stmt = $pdo->prepare("SELECT `username` FROM `mailbox` WHERE `kind` NOT REGEXP 'location|thing|group' AND `domain` = :domain");
$stmt->execute(array(
':domain' => $_data,
));
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
while($row = array_shift($rows)) {
$mailboxes[] = $row['username'];
}
}
else {
$stmt = $pdo->prepare("SELECT `username` FROM `mailbox` WHERE `kind` NOT REGEXP 'location|thing|group' AND (`domain` IN (SELECT `domain` FROM `domain_admins` WHERE `active` = '1' AND `username` = :username) OR 'admin' = :role)");
$stmt->execute(array(
':username' => $_SESSION['mailcow_cc_username'],
':role' => $_SESSION['mailcow_cc_role'],
));
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
while($row = array_shift($rows)) {
$mailboxes[] = $row['username'];
}
}
return $mailboxes;
break;
case 'tls_policy':
$attrs = array();
if (isset($_data) && filter_var($_data, FILTER_VALIDATE_EMAIL)) {
if (!hasMailboxObjectAccess($_SESSION['mailcow_cc_username'], $_SESSION['mailcow_cc_role'], $_data)) {
return false;
}
}
else {
$_data = $_SESSION['mailcow_cc_username'];
}
$stmt = $pdo->prepare("SELECT `attributes` FROM `mailbox` WHERE `username` = :username");
$stmt->execute(array(':username' => $_data));
$attrs = $stmt->fetch(PDO::FETCH_ASSOC);
$attrs = json_decode($attrs['attributes'], true);
return array(
'tls_enforce_in' => $attrs['tls_enforce_in'],
'tls_enforce_out' => $attrs['tls_enforce_out']
);
break;
case 'quarantine_notification':
$attrs = array();
if (isset($_data) && filter_var($_data, FILTER_VALIDATE_EMAIL)) {
if (!hasMailboxObjectAccess($_SESSION['mailcow_cc_username'], $_SESSION['mailcow_cc_role'], $_data)) {
return false;
}
}
else {
$_data = $_SESSION['mailcow_cc_username'];
}
$stmt = $pdo->prepare("SELECT `attributes` FROM `mailbox` WHERE `username` = :username");
$stmt->execute(array(':username' => $_data));
$attrs = $stmt->fetch(PDO::FETCH_ASSOC);
$attrs = json_decode($attrs['attributes'], true);
return $attrs['quarantine_notification'];
break;
case 'filters':
$filters = array();
if (isset($_data) && filter_var($_data, FILTER_VALIDATE_EMAIL)) {
if (!hasMailboxObjectAccess($_SESSION['mailcow_cc_username'], $_SESSION['mailcow_cc_role'], $_data)) {
return false;
}
}
else {
$_data = $_SESSION['mailcow_cc_username'];
}
$stmt = $pdo->prepare("SELECT `id` FROM `sieve_filters` WHERE `username` = :username");
$stmt = $pdo->prepare("SELECT `username` FROM `mailbox` WHERE `kind` REGEXP 'location|thing|group' AND `domain` = :domain");
$stmt->execute(array(
':domain' => $_data,
));
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
while($row = array_shift($rows)) {
$resources[] = $row['username'];
}
}
else {
$stmt = $pdo->prepare("SELECT `username` FROM `mailbox` WHERE `kind` REGEXP 'location|thing|group' AND `domain` IN (SELECT `domain` FROM `domain_admins` WHERE `active` = '1' AND `username` = :username) OR 'admin' = :role");
$stmt->execute(array(
':username' => $_SESSION['mailcow_cc_username'],
':role' => $_SESSION['mailcow_cc_role'],
));
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
while($row = array_shift($rows)) {
$resources[] = $row['username'];
}
}
return $resources;
break;
case 'alias_domains':
$aliasdomains = array();
if (isset($_data) && !hasDomainAccess($_SESSION['mailcow_cc_username'], $_SESSION['mailcow_cc_role'], $_data)) {
$stmt = $pdo->prepare("SELECT `alias_domain` FROM `alias_domain` WHERE `target_domain` = :domain");
$stmt->execute(array(
':domain' => $_data,
));
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
while($row = array_shift($rows)) {
$aliasdomains[] = $row['alias_domain'];
}
}
else {
$stmt = $pdo->prepare("SELECT `alias_domain` FROM `alias_domain` WHERE `target_domain` IN (SELECT `domain` FROM `domain_admins` WHERE `active` = '1' AND `username` = :username) OR 'admin' = :role");
$stmt->execute(array(
':username' => $_SESSION['mailcow_cc_username'],
':role' => $_SESSION['mailcow_cc_role'],
));
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
while($row = array_shift($rows)) {
$aliasdomains[] = $row['alias_domain'];
}
}
return $aliasdomains;
break;
case 'aliases':
$aliases = array();
if (!hasDomainAccess($_SESSION['mailcow_cc_username'], $_SESSION['mailcow_cc_role'], $_data)) {
return false;
}
$stmt = $pdo->prepare("SELECT `id` FROM `alias` WHERE `address` != `goto` AND `domain` = :domain");
$stmt->execute(array(
':domain' => $_data,
));
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
while($row = array_shift($rows)) {
$aliases[] = $row['id'];
}
return $aliases;
break;
case 'alias_details':
$aliasdata = array();
$stmt = $pdo->prepare("SELECT
`id`,
`domain`,
`goto`,
`address`,
`public_comment`,
`private_comment`,
`active` as `active_int`,
`sogo_visible` as `sogo_visible_int`,
CASE `active` WHEN 1 THEN '".$lang['mailbox']['yes']."' ELSE '".$lang['mailbox']['no']."' END AS `active`,
CASE `sogo_visible` WHEN 1 THEN '".$lang['mailbox']['yes']."' ELSE '".$lang['mailbox']['no']."' END AS `sogo_visible`,
`created`,
`modified`
FROM `alias`
WHERE `id` = :id AND `address` != `goto`");
$stmt->execute(array(
':id' => intval($_data),
));
$row = $stmt->fetch(PDO::FETCH_ASSOC);
$stmt = $pdo->prepare("SELECT `target_domain` FROM `alias_domain` WHERE `alias_domain` = :domain");
CASE `mailbox`.`active` WHEN 1 THEN '".$lang['mailbox']['yes']."' ELSE '".$lang['mailbox']['no']."' END AS `active`,
`mailbox`.`domain`,
`mailbox`.`local_part`,
`mailbox`.`quota`,
`quota2`.`bytes`,
`attributes`,
`quota2`.`messages`
FROM `mailbox`, `quota2`, `domain`
WHERE `mailbox`.`kind` NOT REGEXP 'location|thing|group' AND `mailbox`.`username` = `quota2`.`username` AND `domain`.`domain` = `mailbox`.`domain` AND `mailbox`.`username` = :mailbox");
}
else {
$stmt = $pdo->prepare("SELECT
`domain`.`backupmx`,
`mailbox`.`username`,
`mailbox`.`name`,
`mailbox`.`active` AS `active_int`,
CASE `mailbox`.`active` WHEN 1 THEN '".$lang['mailbox']['yes']."' ELSE '".$lang['mailbox']['no']."' END AS `active`,
`mailbox`.`domain`,
`mailbox`.`local_part`,
`mailbox`.`quota`,
`quota2replica`.`bytes`,
`attributes`,
`quota2replica`.`messages`
FROM `mailbox`, `quota2replica`, `domain`
WHERE `mailbox`.`kind` NOT REGEXP 'location|thing|group' AND `mailbox`.`username` = `quota2replica`.`username` AND `domain`.`domain` = `mailbox`.`domain` AND `mailbox`.`username` = :mailbox");
}
$stmt->execute(array(
':mailbox' => $_data,
));
$row = $stmt->fetch(PDO::FETCH_ASSOC);
$stmt = $pdo->prepare("SELECT `maxquota`, `quota` FROM `domain` WHERE `domain` = :domain");
$stmt = $pdo->prepare("SELECT COALESCE(SUM(`quota`), 0) as `in_use` FROM `mailbox` WHERE `kind` NOT REGEXP 'location|thing|group' AND `domain` = :domain AND `username` != :username");
$stmt = $pdo->prepare("DELETE FROM `sogo_user_profile` WHERE `c_uid` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `sogo_cache_folder` WHERE `c_uid` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `sogo_acl` WHERE `c_object` LIKE '%/" . $username . "/%' OR `c_uid` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `sogo_store` WHERE `c_folder_id` IN (SELECT `c_folder_id` FROM `sogo_folder_info` WHERE `c_path2` = :username)");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `sogo_quick_contact` WHERE `c_folder_id` IN (SELECT `c_folder_id` FROM `sogo_folder_info` WHERE `c_path2` = :username)");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `sogo_quick_appointment` WHERE `c_folder_id` IN (SELECT `c_folder_id` FROM `sogo_folder_info` WHERE `c_path2` = :username)");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `sogo_folder_info` WHERE `c_path2` = :username");
$stmt = $pdo->prepare("DELETE FROM `alias` WHERE `goto` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `quarantine` WHERE `rcpt` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `quota2` WHERE `username` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `quota2replica` WHERE `username` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `mailbox` WHERE `username` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `sender_acl` WHERE `logged_in_as` = :username");
$stmt->execute(array(
':username' => $username
));
// fk, better safe than sorry
$stmt = $pdo->prepare("DELETE FROM `user_acl` WHERE `username` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `spamalias` WHERE `goto` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `imapsync` WHERE `user2` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `filterconf` WHERE `object` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `sogo_user_profile` WHERE `c_uid` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `sogo_cache_folder` WHERE `c_uid` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `sogo_acl` WHERE `c_object` LIKE '%/" . str_replace('%', '\%', $username) . "/%' OR `c_uid` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `sogo_store` WHERE `c_folder_id` IN (SELECT `c_folder_id` FROM `sogo_folder_info` WHERE `c_path2` = :username)");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `sogo_quick_contact` WHERE `c_folder_id` IN (SELECT `c_folder_id` FROM `sogo_folder_info` WHERE `c_path2` = :username)");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `sogo_quick_appointment` WHERE `c_folder_id` IN (SELECT `c_folder_id` FROM `sogo_folder_info` WHERE `c_path2` = :username)");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `sogo_folder_info` WHERE `c_path2` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `bcc_maps` WHERE `local_dest` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `oauth_access_tokens` WHERE `user_id` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `oauth_refresh_tokens` WHERE `user_id` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("DELETE FROM `oauth_authorization_codes` WHERE `user_id` = :username");
$stmt->execute(array(
':username' => $username
));
$stmt = $pdo->prepare("SELECT `address`, `goto` FROM `alias`
$stmt = $pdo->prepare("DELETE FROM `mailbox` WHERE `username` = :username");
$stmt->execute(array(
':username' => $name
));
$stmt = $pdo->prepare("DELETE FROM `sogo_user_profile` WHERE `c_uid` = :username");
$stmt->execute(array(
':username' => $name
));
$stmt = $pdo->prepare("DELETE FROM `sogo_cache_folder` WHERE `c_uid` = :username");
$stmt->execute(array(
':username' => $name
));
$stmt = $pdo->prepare("DELETE FROM `sogo_acl` WHERE `c_object` LIKE '%/" . $name . "/%' OR `c_uid` = :username");
$stmt->execute(array(
':username' => $name
));
$stmt = $pdo->prepare("DELETE FROM `sogo_store` WHERE `c_folder_id` IN (SELECT `c_folder_id` FROM `sogo_folder_info` WHERE `c_path2` = :username)");
$stmt->execute(array(
':username' => $name
));
$stmt = $pdo->prepare("DELETE FROM `sogo_quick_contact` WHERE `c_folder_id` IN (SELECT `c_folder_id` FROM `sogo_folder_info` WHERE `c_path2` = :username)");
$stmt->execute(array(
':username' => $name
));
$stmt = $pdo->prepare("DELETE FROM `sogo_quick_appointment` WHERE `c_folder_id` IN (SELECT `c_folder_id` FROM `sogo_folder_info` WHERE `c_path2` = :username)");
$stmt->execute(array(
':username' => $name
));
$stmt = $pdo->prepare("DELETE FROM `sogo_folder_info` WHERE `c_path2` = :username");
$stmt = $pdo->query("DELETE FROM `admin` WHERE `superadmin` = 0 AND `username` NOT IN (SELECT `username`FROM `domain_admins`);");
$stmt = $pdo->query("DELETE FROM `da_acl` WHERE `username` NOT IN (SELECT `username`FROM `domain_admins`);");
// Migrate attributes
$stmt = $pdo->query("UPDATE `mailbox` SET `attributes` = '{}' WHERE `attributes` = '' OR `attributes` IS NULL;");
$stmt = $pdo->query("UPDATE `mailbox` SET `attributes` = JSON_SET(`attributes`, '$.force_pw_update', \"0\") WHERE JSON_EXTRACT(`attributes`, '$.force_pw_update') IS NULL;");
$stmt = $pdo->query("UPDATE `mailbox` SET `attributes` = JSON_SET(`attributes`, '$.sogo_access', \"1\") WHERE JSON_EXTRACT(`attributes`, '$.sogo_access') IS NULL;");
$stmt = $pdo->query("UPDATE `mailbox` SET `attributes` = JSON_SET(`attributes`, '$.mailbox_format', \"maildir:\") WHERE JSON_EXTRACT(`attributes`, '$.mailbox_format') IS NULL;");
$stmt = $pdo->query("UPDATE `mailbox` SET `attributes` = JSON_SET(`attributes`, '$.quarantine_notification', \"never\") WHERE JSON_EXTRACT(`attributes`, '$.quarantine_notification') IS NULL;");
foreach($tls_options as $tls_user => $tls_options) {
$stmt = $pdo->prepare("UPDATE `mailbox` SET `attributes` = JSON_SET(`attributes`, '$.tls_enforce_in', :tls_enforce_in),
// Set tls_enforce_* if still missing (due to deleted attrs for example)
$stmt = $pdo->query("UPDATE `mailbox` SET `attributes` = JSON_SET(`attributes`, '$.tls_enforce_out', \"1\") WHERE JSON_EXTRACT(`attributes`, '$.tls_enforce_out') IS NULL;");
$stmt = $pdo->query("UPDATE `mailbox` SET `attributes` = JSON_SET(`attributes`, '$.tls_enforce_in', \"1\") WHERE JSON_EXTRACT(`attributes`, '$.tls_enforce_in') IS NULL;");
// Fix ACL
$stmt = $pdo->query("INSERT INTO `user_acl` (`username`) SELECT `username` FROM `mailbox` WHERE `kind` = '' AND NOT EXISTS (SELECT `username` FROM `user_acl`);");
$stmt = $pdo->query("INSERT INTO `da_acl` (`username`) SELECT DISTINCT `username` FROM `domain_admins` WHERE `username` != 'admin' AND NOT EXISTS (SELECT `username` FROM `da_acl`);");
// Fix domain_admins
$stmt = $pdo->query("DELETE FROM `domain_admins` WHERE `domain` = 'ALL';");
$pdo = new PDO($dsn, $database_user, $database_pass, $opt);
}
catch (PDOException $e) {
// Stop when SQL connection fails
?>
<center style='font-family:sans-serif;'>Connection to database failed.<br /><br />The following error was reported:<br/> <?=$e->getMessage();?></center>
<?php
exit;
}
// Stop when dockerapi is not available
if (fsockopen("tcp://dockerapi", 443, $errno, $errstr) === false) {
?>
<center style='font-family:sans-serif;'>Connection to dockerapi container failed.<br /><br />The following error was reported:<br/><?=$errno;?> - <?=$errstr;?></center>
<?php
exit;
}
// OAuth2
class mailcowPdo extends OAuth2\Storage\Pdo {
public function __construct($connection, $config = array()) {
parent::__construct($connection, $config);
$this->config['user_table'] = 'mailbox';
}
public function checkUserCredentials($username, $password) {
if (check_login($username, $password) == 'user') {
return true;
}
return false;
}
public function getUserDetails($username) {
return $this->getUser($username);
}
}
$oauth2_scope_storage = new OAuth2\Storage\Memory(array('default_scope' => 'profile', 'supported_scopes' => array('profile')));
{"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"220px","width":"220px"},"type":"html","title":lang.action,"breakpoints":"xs sm md"}
{"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"220px","width":"220px"},"type":"html","title":lang.action,"breakpoints":"xs sm md"}
"ip_list_empty": "Liste erlaubter IPs darf nicht leer sein",
"invalid_destination": "Ziel-Format \"%s\" ist ungültig",
"invalid_nexthop": "Next Hop ist ungültig",
"invalid_nexthop_authenticated": "Dieser Next Hop existiert bereits mit abweichenden Authentifizierungsdaten. Die bestehenden Authentifizierungsdaten dieses \"Next Hops\" müssen vorab angepasst werden.",
"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",
"rspamd_ui_pw_length": "Rspamd UI Passwort muss mindestens 6 Zeichen lang sein",
"unknown": "Ein unbekannter Fehler trat auf",
"malformed_username": "Benutzername hat ein falsches Format",
"login_failed": "Anmeldung fehlgeschlagen",
"set_acl_failed": "ACL konnte nicht gesetzt werden",
"no_user_defined": "Kein Benutzer definiert",
"script_empty": "Script darf nicht leer sein",
"sieve_error": "Sieve Parser: %s",
"value_missing": "Bitte alle Felder ausfüllen",
"filter_type": "Falscher Filtertyp",
"domain_cannot_match_hostname": "Domain darf nicht dem Hostnamen entsprechen",
"rl_timeframe": "Ratelimit Zeitraum ist inkorrekt",
"invalid_bcc_map_type": "Ungültiger BCC Map-Typ",
"bcc_empty": "BCC Ziel darf nicht leer sein",
"bcc_must_be_email": "BCC Ziel %s ist keine gültige E-Mail-Adresse",
"bcc_exists": "Ein BCC Map Eintrag %s existiert bereits als Typ %s",
"private_key_error": "Schlüsselfehler: %s",
"map_content_empty": "Inhalt darf nicht leer sein",
"app_name_empty": "App Name darf nicht leer sein",
"settings_map_invalid": "Regel ID %s ist ungültig",
"app_passwd_id_invalid": "App Passwort ID %s ist ungültig",
"global_map_invalid": "Rspamd Map %s ist ungültig",
"global_filter_write_error": "Kann Filterdatei nicht schreiben: %s",
"global_map_write_error": "Kann globale Map ID %s nicht schreiben: %s",
"invalid_host": "Ungültiger Host: %s",
"relayhost_invalid": "Mapeintrag %s ist ungültig",
"dkim_domain_or_sel_invalid": "DKIM-Domain oder Selector nicht korrekt: %s",
"access_denied": "Zugriff verweigert oder unvollständige/ungültige Daten",
"domain_invalid": "Domainname ist leer oder ungültig",
"mailbox_quota_exceeds_domain_quota": "Maximale Größe für Mailboxen überschreitet das Domain Speicherlimit",
"object_is_not_numeric": "Wert %s ist nicht numerisch",
"alias_empty": "Alias-Adresse darf nicht leer sein",
"goto_empty": "Eine Alias-Adresse muss auf mindestens eine gütlige Ziel-Adresse zeigen",
"policy_list_from_exists": "Ein Eintrag mit diesem Wert existiert bereits",
"policy_list_from_invalid": "Eintrag hat ein ungültiges Format",
"alias_invalid": "Alias-Adresse %s ist ungültig",
"goto_invalid": "Ziel-Adresse %s ist ungültig",
"last_key": "Letzter Key kann nicht gelöscht werden, bitte stattdessen die 2FA deaktivieren.",
"alias_domain_invalid": "Alias-Domain %s ist ungültig",
"target_domain_invalid": "Ziel-Domain %s ist ungültig",
"object_exists": "Objekt %s existiert bereits",
"domain_exists": "Domain %s existiert bereits",
"alias_goto_identical": "Alias- und Ziel-Adresse dürfen nicht identisch sein",
"aliasd_targetd_identical": "Alias-Domain darf nicht gleich Ziel-Domain sein: %s",
"maxquota_empty": "Max. Speicherplatz pro Mailbox darf nicht 0 sein.",
"targetd_not_found": "Ziel-Domain %s nicht gefunden",
"targetd_relay_domain": "Ziel-Domain %s ist eine Relay-Domain",
"username_invalid": "Benutzername %s kann nicht verwendet werden",
"password_mismatch": "Passwort-Wiederholung stimmt nicht überein",
"password_complexity": "Passwort entspricht nicht den Richtlinien",
"password_empty": "Passwort darf nicht leer sein",
"mailbox_invalid": "Mailboxname ist ungültig",
"resource_invalid": "Ressourcenname %s ist ungültig",
"description_invalid": "Ressourcenbeschreibung für %s ist ungültig",
"is_alias": "%s lautet bereits eine Alias-Adresse",
"is_alias_or_mailbox": "Eine Mailbox, ein Alias oder eine sich aus einer Alias-Domain ergebende Adresse mit dem Namen %s ist bereits vorhanden",
"is_spam_alias": "%s lautet bereits eine Spam-Alias-Adresse",
"quota_not_0_not_numeric": "Speicherplatz muss numerisch und >= 0 sein",
"domain_not_found": "Domain %s nicht gefunden",
"max_mailbox_exceeded": "Anzahl an Mailboxen überschritten (%d von %d)",
"max_alias_exceeded": "Anzahl an Alias-Adressen überschritten",
"mailbox_quota_exceeded": "Speicherplatz überschreitet das Limit (max. %d MiB)",
"quota_exceeded_scope": "Domain-Quota erschöpft: Es können nur noch unlimiterte Mailboxen in dieser Domain erstellt werden."
},
"user": {
+ "pushover_info": "Push-Benachrichtungen werden angewendet auf alle nicht-Spam Nachrichten zugestellt an <b>%s</b>, einschließlich Alias-Adressen (shared, non-shared, tagged).",
+ "verify": "Verifizieren",
+ "pushover_verify": "Verbindung verifizieren",
+ "title": "Title",
+ "pushover_title": "Notification Titel",
+ "text": "Text",
+ "pushover_text": "Notification Text ({SUBJECT} entspricht dem Mail-Betreff)",
+ "last_mail_login": "Letzter Mail-Login",
"last_mail_login": "Letzter Mail-Login",
"no_last_login": "Keine letzte UI Anmeldung gespeichert",
"apple_connection_profile_mailonly": "Dieses Verbindungsprofil beinhaltet IMAP und SMTP Konfigurationen für ein Apple Gerät.",
"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.",
"email": "E-Mail",
"email_and_dav": "E-Mail, Kalender und Adressbücher",
"create_app_passwd": "Erstelle App Passwort",
"app_passwds": "App Passwörter",
"app_name": "App Name",
"app_hint": "App Passwörter sind alternative Passwörter für den <b>IMAP und SMTP</b> Login am Mailserver. Der Benutzername bleibt unverändert.<br>SOGo (und damit ActiveSync) ist mit diesem Kennwort nicht verwendbar.",
"loading": "Lade...",
"force_pw_update": "Das Passwort für diesen Benutzer <b>muss</b> geändert werden, damit die Zugriffssperre auf die Groupwarekomponenten wieder freigeschaltet wird.",
"active_sieve": "Aktiver Filter",
"show_sieve_filters": "Zeige aktiven Filter des Benutzers",
"new_password_description": "Mindestanforderung: 6 Zeichen lang, Buchstaben und Zahlen.",
"spam_aliases": "Temporäre E-Mail Aliasse",
"alias": "Alias",
"shared_aliases": "Geteilte Alias-Adressen",
"shared_aliases_desc": "Geteilte Alias-Adressen werden nicht bei benutzerdefinierten Einstellungen, wie die des Spam-Filters oder der Verschlüsselungsrichtlinie, berücksichtigt. Entsprechende Spam-Filter können lediglich von einem Administrator vorgenommen werden.",
"direct_aliases": "Direkte Alias-Adressen",
"direct_aliases_desc": "Nur direkte Alias-Adressen werden für benutzerdefinierte Einstellungen berücksichtigt.",
"is_catch_all": "Ist Catch-All Adresse für Domain(s)",
"aliases_also_send_as": "Darf außerdem versenden als Benutzer",
"aliases_send_as_all": "Absender für folgende Domains und zugehörige Alias-Domains nicht prüfen",
"alias_create_random": "Zufälligen Alias generieren",
"spamfilter_wl_desc": "Für E-Mail-Adressen, die vom Spamfilter <b>nicht</b> erfasst werden sollen. Die Verwendung von Wildcards ist gestattet. Ein Filter funktioniert lediglich für direkte nicht-\"Catch All\" Alias-Adressen (Alias-Adressen mit lediglich einer Mailbox als Ziel-Adresse) sowie die Mailbox-Adresse selbst.",
"spamfilter_bl": "Blacklist",
"spamfilter_bl_desc": "Für E-Mail-Adressen, die vom Spamfilter <b>immer</b> als Spam erfasst und abgelehnt werden. Die Verwendung von Wildcards ist gestattet. Ein Filter funktioniert lediglich für direkte nicht-\"Catch All\" Alias-Adressen (Alias-Adressen mit lediglich einer Mailbox als Ziel-Adresse) sowie die Mailbox-Adresse selbst.",
"tls_policy_warning": "<strong>Vorsicht:</strong> Entscheiden Sie sich unverschlüsselte Verbindungen abzulehnen, kann dies dazu führen, dass Kontakte Sie nicht mehr erreichen.<br>Nachrichten, die die Richtlinie nicht erfüllen, werden durch einen Hard-Fail im Mailsystem abgewiesen.<br>Diese Einstellung ist aktiv für die primäre Mailbox, für alle Alias-Adressen, die dieser Mailbox <b>direkt zugeordnet</b> sind (lediglich eine einzige Ziel-Adresse) und der Adressen, die sich aus Alias-Domains ergeben. Ausgeschlossen sind temporäre Aliasse (\"Spam-Alias-Adressen\"), Catch-All Alias-Adressen sowie Alias-Adressen mit mehreren Zielen.",
"tls_policy": "Verschlüsselungsrichtlinie",
"tls_enforce_in": "TLS eingehend erzwingen",
"tls_enforce_out": "TLS ausgehend erzwingen",
"no_record": "Kein Eintrag",
"tag_handling": "Umgang mit getaggten E-Mails steuern",
"tag_in_subfolder": "In Unterordner",
"tag_in_subject": "In Betreff",
"tag_in_none": "Nichts tun",
"tag_help_explain": "Als Unterordner: Es wird ein Ordner mit dem Namen des Tags unterhalb der Inbox erstellt (\"INBOX/Facebook\").<br>\r\nIn Betreff: Der Name des Tags wird dem Betreff angefügt, etwa \"[Facebook] Meine Neuigkeiten\".",
"tag_help_example": "Beispiel für eine getaggte E-Mail-Adresse: ich<b>+Facebook</b>@example.org",
"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!",
"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.",
+ "pushover_info": "Push-Benachrichtungen werden angewendet auf alle nicht-Spam Nachrichten zugestellt an <b>%s</b>, einschließlich Alias-Adressen (shared, non-shared, tagged).",
+ "verify": "Verifizieren",
+ "pushover_verify": "Verbindung verifizieren",
+ "title": "Title",
+ "pushover_title": "Notification Titel",
+ "text": "Text",
+ "pushover_text": "Notification Text ({SUBJECT} entspricht dem Mail-Betreff)",
"spamfilter": "Spamfilter",
"domain_s": "Domain(s)",
"rspamd-com_settings": "Ein Name wird automatisch generiert. Beispielinhalte zur Einsicht stehen nachstehend bereit. Siehe auch <a href=\"https://rspamd.com/doc/configuration/settings.html#settings-structure\" target=\"_blank\">Rspamd docs</a>",
"no_new_rows": "Keine weiteren Zeilen vorhanden",
"additional_rows": " zusätzliche Zeilen geladen",
"private_key": "Private Key",
"import": "Importieren",
"duplicate": "Duplizieren",
"import_private_key": "Private Key importieren",
"duplicate_dkim": "DKIM duplizieren",
"f2b_parameters": "Fail2ban-Parameter",
"f2b_ban_time": "Bannzeit (s)",
"f2b_max_attempts": "Max. Versuche",
"f2b_retry_window": "Wiederholungen im Zeitraum von (s)",
"f2b_netban_ipv4": "Netzbereich für IPv4-Bans (8-32)",
"f2b_netban_ipv6": "Netzbereich für IPv6-Bans (8-128)",
"f2b_whitelist": "Whitelist für Netzwerke und Hosts",
"r_inactive": "Inaktive Restriktionen",
"r_active": "Aktive Restriktionen",
"r_info": "Ausgegraute/deaktivierte Elemente sind mailcow nicht bekannt und können nicht in die Liste inaktiver Elemente verschoben werden. Unbekannte Restriktionen werden trotzdem in Reihenfolge der Erscheinung gesetzt.<br>Sie können ein Element in der Datei <code>inc/vars.local.inc.php</code> als bekannt hinzufügen, um es zu bewegen.",
"save": "Änderungen speichern",
"dkim_add_key": "ARC/DKIM-Key hinzufügen",
"dkim_keys": "ARC/DKIM-Keys",
"dkim_key_valid": "Key gültig",
"dkim_key_unused": "Key ohne Zuweisung",
"dkim_key_missing": "Key fehlt",
"dkim_from": "Von",
"dkim_to": "Nach",
"dkim_from_title": "Quellobjekt für Duplizierung",
"dkim_to_title": "Ziel-Objekt(e) werden überschrieben",
"dkim_domains_wo_keys": "Domains mit fehlenden Keys auswählen",
"queue_ays": "Soll die derzeitige Queue wirklich komplett bereinigt werden?",
"arrival_time": "Ankunftszeit (Serverzeit)",
"message_size": "Nachrichtengröße",
"sender": "Sender",
"recipients": "Empfänger",
"flush_queue": "Flush Queue",
"delete_queue": "Alle löschen",
"domain_admins": "Domain-Administratoren",
"username": "Benutzername",
"edit": "Bearbeiten",
"remove": "Entfernen",
"admin": "Administrator",
"admin_details": "Administrator bearbeiten",
"unchanged_if_empty": "Unverändert, wenn leer",
"access": "Zugang",
"no_record": "Kein Eintrag",
"filter_table": "Tabelle Filtern",
"empty": "Keine Einträge vorhanden",
"time": "Zeit",
"last_applied": "Zuletzt angewendet",
"reset_limit": "Hash entfernen",
"hash_remove_info": "Das Entfernen eines Ratelimit Hashes - sofern noch existent - bewirkt den Reset gezählter Nachrichten dieses Elements.<br>\r\n Jeder Hash wird durch eine eindeutige Farbe gekennzeichnet.",
"authed_user": "Auth. Benutzer",
"priority": "Gewichtung",
"refresh": "Neu laden",
"to_top": "Nach oben",
"in_use_by": "Verwendet von",
"rate_name": "Rate name",
"message": "Nachricht",
"forwarding_hosts": "Weiterleitungs-Hosts",
"forwarding_hosts_hint": "Eingehende Nachrichten werden von den hier gelisteten Hosts bedingungslos akzeptiert. Diese Hosts werden dann nicht mit DNSBLs abgeglichen oder Greylisting unterworfen. Von ihnen empfangener Spam wird nie abgelehnt, optional kann er aber in den Spam-Ordner einsortiert werden. Die übliche Verwendung für diese Funktion ist, um Mailserver anzugeben, auf denen eine Weiterleitung zu Ihrem mailcow-Server eingerichtet wurde.",
"forwarding_hosts_add_hint": "Sie können entweder IPv4/IPv6-Adressen, Netzwerke in CIDR-Notation, Hostnamen (die zu IP-Adressen aufgelöst werden), oder Domainnamen (die zu IP-Adressen aufgelöst werden, indem ihr SPF-Record abgefragt wird oder, in dessen Abwesenheit, ihre MX-Records) angeben.",
"relayhosts_hint": "Erstellen Sie senderabhängige Transporte, um diese im Einstellungsdialog einer Domain auszuwählen.<br>\r\n Der Transporttyp lautet immer \"smtp:\". Benutzereinstellungen bezüglich Verschlüsselungsrichtlinie werden beim Transport berücksichtigt.<br>\r\n Gilt neben ausgewählter Domain auch für untergeordnete Alias-Domains.",
"transports_hint": "→ Transport Maps <b>überwiegen</b> senderabhängige Transport Maps.<br>\r\n→ Transport Maps ignorieren Mailbox-Einstellungen für ausgehende Verschlüsselung. Eine serverweite TLS-Richtlinie wird jedoch angewendet.<br>\r\n→ Der Transport erfolgt immer via \"smtp:\".<br>\r\n→ Adressen, die mit \"/localhost$/\" übereinstimmen, werden immer via \"local:\" transportiert, daher sind sie von einer Zieldefinition \"*\" ausgeschlossen.<br>\r\n→ 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.",
"add_relayhost_hint": "Bitte beachten Sie, dass Anmeldedaten unverschlüsselt gespeichert werden.<br>\r\n Angelegte Transporte dieser Art sind <b>senderabhängig</b> und müssen erst einer Domain zugewiesen werden, bevor sie als Transport verwendet werden.<br>\r\n Diese Einstellungen entsprechen demnach <i>nicht</i> dem \"relayhost\" Parameter in Postfix.",
"add_transports_hint": "Bitte beachten Sie, dass Anmeldedaten unverschlüsselt gespeichert werden.",
"add_relayhost": "Senderabhängigen Transport hinzufügen",
"add_transport": "Transport hinzufügen",
"relayhosts": "Senderabhängige Transport Maps",
"transport_maps": "Transport Maps",
"routing": "Routing",
"credentials_transport_warning": "<b>Warnung</b>: Das Hinzufügen einer neuen Regel bewirkt die Aktualisierung der Authentifizierungsdaten aller vorhandenen Einträge mit identischem Host.",
"destination": "Ziel",
"nexthop": "Next Hop",
"api_allow_from": "IP-Adressen für Zugriff",
"api_key": "API-Key",
"api_skip_ip_check": "IP-Check für API nicht ausführen",
"activate_api": "API aktivieren",
"regen_api_key": "API-Key regenerieren",
"ban_list_info": "Übersicht ausgesperrter Netzwerke: <b>Netzwerk (verbleibende Banzeit) - [Aktionen]</b>.<br />IPs, die zum Entsperren eingereiht werden, verlassen die Liste aktiver Bans nach wenigen Sekunden.<br />Rote Labels sind Indikatoren für aktive Blacklisteinträge.",
"quota_notifications_info": "Quota Benachrichtigungen werden an Mailboxen versendet, die 80 respektive 95 Prozent der zur Verfügung stehenden Quota überschreiten.",
"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_retention_size": "Rückhaltungen pro Mailbox:<br><small>0 bedeutet <b>inaktiv</b>.</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_age": "Maximales Alter in Tagen<br><small>Wert muss größer oder gleich 1 Tag sein.</small>",
"quarantine_exclude_domains": "Domains und Alias-Domains ausschließen",
"help_text": "Hilfstext unter Login-Maske (HTML zulässig)",
"title_name": "\"mailcow UI\" Webseiten Titel",
"main_name": "\"mailcow UI\" Name",
"apps_name": "\"mailcow Apps\" Name",
"ui_footer": "Footer (HTML zulässig)",
"oauth2_info": "Die OAuth2 Implementierung unterstützt den Grant Type \"Authorization Code\" mit Refresh Tokens.<br>\r\nDer Server wird automatisch einen neuen Refresh Token ausstellen, sobald ein vorheriger Token gegen einen Access Token eingetauscht wurde.<br><br>\r\n→ Der Standard Scope lautet <i>profile</i>. Nur Mailbox-Benutzer können sich gegen OAuth2 authentifizieren. Wird kein Scope angegeben, verwendet das System per Standard <i>profile</i>.<br>\r\n→ Der <i>state</i> Parameter wird im Zuge des Autorisierungsprozesses benötigt.<br><br>\r\nDie Pfade für die OAuth2 API lauten wie folgt: <br>\r\n<ul>\r\n <li>Authorization Endpoint: <code>/oauth/authorize</code></li>\r\n <li>Token Endpoint: <code>/oauth/token</code></li>\r\n <li>Resource Page: <code>/oauth/profile</code></li>\r\n</ul>\r\nDie Regenerierung des Client Secrets wird vorhandene Authorization Codes nicht invalidieren, dennoch wird der Renew des Access Tokens durch einen Refresh Token nicht mehr gelingen.<br><br>\r\nDas Entfernen aller Client Tokens verursacht die umgehende Terminierung aller aktiven OAuth2 Sessions. Clients müssen sich erneut gegen die OAuth2 Anwendung authentifizieren.",
"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.",
"upload": "Hochladen",
"app_links": "App Links",
"app_name": "App Name",
"link": "Link",
"remove_row": "Entfernen",
"add_row": "Reihe hinzufügen",
"reset_default": "Zurücksetzen auf Standard",
"merged_vars_hint": "Ausgegraute Reihen wurden aus der Datei <code>vars.(local.)inc.php</code> gelesen und können hier nicht verändert werden.",
"sys_mails": "System-E-Mails",
"subject": "Betreff",
"from": "Absender",
"include_exclude": "Ein- und Ausschlüsse",
"include_exclude_info": "Ohne Auswahl werden <b>alle Mailboxen</b> adressiert.",
"excludes": "Diese Empfänger ausschließen",
"includes": "Diese Empfänger einschließen",
"text": "Text",
"activate_send": "Senden-Button freischalten",
"send": "Senden",
"api_info": "Das API befindet sich noch in Entwicklung, die Dokumentation kann unter <a href=\"/api\">/api</a> abgerufen werden.",
"guid_and_license": "GUID & Lizenz",
"guid": "GUID - Eindeutige Instanz-ID",
"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>.",
"validate_license_now": "GUID erneut verifizieren",
"customer_id": "Kunde",
"service_id": "Service",
"sal_level": "Moo-Level",
"lookup_mx": "Ziel gegen MX prüfen (etwa .outlook.com, um alle Ziele mit MX *.outlook.com zu routen)",
"transport_dest_format": "Syntax: example.org, .example.org, *, box@example.org (mehrere Werte getrennt durch Komma einzugeben)",
"rspamd_global_filters_info": "Globale Filter-Maps steuern globales White- und Blacklisting dieses Servers.",
"rspamd_global_filters_regex": "Die akzeptierte Form für Einträge sind <b>ausschließlich</b> Regular Expressions.\r\n Trotz rudimentärer Überprüfung der Map, kann es zu fehlerhaften Einträgen kommen, die Rspamd im schlechtesten Fall mit unvorhersehbarer Funktionalität bestraft.<br>\r\n Das korrekte Format lautet \"/pattern/options\" (Beispiel: <code>/.+@domain\\.tld/i</code>).<br>\r\n Der Name der Map beschreibt die jeweilige Funktion.<br>\r\n Rspamd versucht die Maps umgehend aufzulösen. Bei Problemen sollte <a href=\"\" data-toggle=\"modal\" data-container=\"rspamd-mailcow\" data-target=\"#RestartContainer\">Rspamd manuell neugestartet werden</a>.",
"add_admin": "Administrator hinzufügen",
"dkim_domains_selector": "Selector",
"search_domain_da": "Suche Domains",
"f2b_blacklist": "Blacklist für Netzwerke und Hosts",
"no": "✕",
"yes": "✓",
"dkim_private_key": "Private Key",
"dkim_key_length": "DKIM Schlüssellänge (bits)",
"domain": "Domain",
"queue_deliver_mail": "Ausliefern",
"queue_unhold_mail": "Freigeben",
"queue_hold_mail": "Zurückhalten",
"f2b_list_info": "Ein Host oder Netzwerk auf der Blacklist wird immer eine Whitelist-Einheit überwiegen. <b>Die Aktualisierung der Liste dauert einige Sekunden.</b>"
},
"start": {
"mailcow_apps_detail": "Verwenden Sie mailcow Apps, um E-Mails abzurufen, Kalender und Kontakte zu verwalten und vieles mehr.",
"mailcow_panel_detail": "<b>Domain-Administratoren</b> erstellen, verändern oder löschen Mailboxen, verwalten die Domäne und sehen sonstige Einstellungen ein.<br>\r\n\tAls <b>Mailbox-Benutzer</b> erstellen Sie hier zeitlich limitierte Aliasse, ändern das Verhalten des Spamfilters, setzen ein neues Passwort und vieles mehr.",
"imap_smtp_server_auth_info": "Bitte verwenden Sie Ihre vollständige E-Mail-Adresse sowie das PLAIN-Authentifizierungsverfahren.<br>\r\nIhre Anmeldedaten werden durch die obligatorische Verschlüsselung entgegen des Begriffes \"PLAIN\" nicht unverschlüsselt übertragen.",
"help": "Hilfe ein-/ausblenden"
},
"quarantine": {
"refresh": "Neu laden",
"table_size": "Tabellengröße",
"table_size_show_n": "Zeige %s Einträge",
"disabled_by_config": "Die derzeitige Konfiguration deaktiviert die Funktion des Quarantäne-Systems.",
"learn_spam_delete": "Als Spam lernen und löschen",
"quarantine": "Quarantäne",
"qinfo": "Das Quarantänesystem speichert abgelehnte Nachrichten in der Datenbank. Dem Sender wird <em>nicht</em> signalisiert, dass seine E-Mail zugestellt wurde.\r\n <br>\"Als Spam lernen und löschen\" lernt Nachrichten nach bayesscher Statistik als Spam und erstellt Fuzzy Hashes ausgehend von der jeweiligen Nachricht, um ähnliche Inhalte zukünftig zu unterbinden.\r\n <br>Der Prozess des Lernens kann abhängig vom System zeitintensiv sein.",
"qhandler_success": "Aktion wurde an das System übergeben. Sie dürfen dieses Fenster nun schließen.",
"release_body": "Die ursprüngliche Nachricht wurde als EML-Datei im Anhang hinterlegt.",
"release_subject": "Potentiell schädliche Nachricht aus Quarantäne: %s",
"confirm_delete": "Bestätigen Sie die Löschung dieses Elements.",
"notified": "Benachrichtigt"
},
"mailbox": {
"stats": "Statistik",
"last_mail_login": "Letzter Mail-Login",
"table_size": "Tabellengröße",
"table_size_show_n": "Zeige %s Einträge",
"tls_policy_maps": "TLS-Richtlinien",
"sogo_allow_admin_hint": "Administrative SOGo Logins sind nur für Mailboxen verfügbar, die bereits ein SOGo Profil besitzen. Ein Benutzer muss zumindest einmal in SOGo eingeloggt gewesen sein, um ein Profil zu besitzen.",
"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_map_parameters_info": "Leer oder Parameter, Beispiele: protocols=!SSLv2 ciphers=medium exclude=3DES",
"booking_0": "Immer als verfügbar anzeigen",
"booking_lt0": "Unbegrenzt, jedoch anzeigen, wenn gebucht",
"booking_custom": "Benutzerdefiniertes Limit",
"booking_0_short": "Immer verfügbar",
"booking_lt0_short": "Weiches Limit",
"booking_custom_short": "Hartes Limit",
"alias_domain_alias_hint": "Alias-Adressen werden <b>nicht</b> automatisch auch auf Domain-Alias Adressen angewendet. Eine Alias-Adresse <code>mein-alias@domain</code> bildet demnach <b>nicht</b> die Adresse <code>mein-alias@alias-domain</code> ab.<br>E-Mail-Weiterleitungen an externe Postfächer sollten über Sieve (SOGo Weiterleitung oder im Reiter \"Filter\") angelegt werden.",
"domain": "Domain",
"spam_aliases": "Temp. Alias",
"alias": "Alias",
"aliases": "Aliasse",
"multiple_bookings": "Mehrfachbuchen",
"kind": "Art",
"description": "Beschreibung",
"resources": "Ressourcen",
"domains": "Domains",
"mailbox": "Mailbox",
"mailboxes": "Mailboxen",
"mailbox_quota": "Max. Größe einer Mailbox",
"domain_quota": "Gesamtspeicher",
"active": "Aktiv",
"action": "Aktion",
"backup_mx": "Backup MX",
"domain_admins": "Domain-Administratoren",
"domain_aliases": "Domain-Aliasse",
"target_domain": "Ziel-Domain",
"target_address": "Ziel-Adresse",
"username": "Benutzername",
"fname": "Name",
"filter_table": "Filtern",
"in_use": "Prozentualer Gebrauch",
"msg_num": "Anzahl Nachrichten",
"remove": "Entfernen",
"edit": "Bearbeiten",
"no_record": "Kein Eintrag für Objekt %s",
"no_record_single": "Kein Eintrag",
"add_domain": "Domain hinzufügen",
"add_domain_alias": "Domain-Alias hinzufügen",
"add_mailbox": "Mailbox hinzufügen",
"add_resource": "Ressource hinzufügen",
"add_alias": "Alias hinzufügen",
"empty": "Keine Einträge vorhanden",
"toggle_all": "Alle",
"quick_actions": "Aktionen",
"activate": "Aktivieren",
"deactivate": "Deaktivieren",
"owner": "Besitzer",
"mins_interval": "Intervall (min)",
"last_run": "Letzte Ausführung",
"last_run_reset": "Als nächstes ausführen",
"excludes": "Ausschlüsse",
"sieve_info": "Es können mehrere Filter pro Benutzer existieren, aber nur ein Filter eines Typs (Pre-/Postfilter) kann gleichzeitig aktiv sein.<br>\r\nDie Ausführung erfolgt in nachstehender Reihenfolge. Ein fehlgeschlagenes Script sowie der Befehl \"keep;\" stoppen die weitere Verarbeitung <b>nicht</b>.<br><br>Global sieve prefilter → Prefilter → User scripts → Postfilter → Global sieve postfilter",
"bcc_info": "Eine empfängerabhängige Map wird verwendet, wenn die BCC-Map Eintragung auf den Eingang einer E-Mail auf das lokale Ziel reagieren soll. Senderabhängige Maps verfahren nach dem gleichen Prinzip.<br/>\r\n Das lokale Ziel wird bei Fehlzustellungen an ein BCC-Ziel nicht informiert.",
"address_rewriting": "Adressumschreibung",
"recipient_maps": "Empfängerumschreibungen",
"recipient_map": "Empfängerumschreibung",
"recipient_map_info": "Empfängerumschreibung ersetzen den Empfänger einer E-Mail vor dem Versand.",
"recipient_map_old_info": "Der originale Empfänger muss eine E-Mail-Adresse oder ein Domainname sein.",
"recipient_map_new_info": "Der neue Empfänger muss eine E-Mail-Adresse sein.",
"alias_domain_backupmx": "Alias-Domain für Relay-Domain inaktiv",
"add_domain_record_first": "Bitte zuerst eine Domain hinzufügen",
"no": "✕",
"yes": "✓",
"insert_preset": "Beispiel \"%s\" laden",
"sieve_preset_header": "Beispielinhalte zur Einsicht stehen nachstehend bereit. Siehe auch <a href=\"https://de.wikipedia.org/wiki/Sieve\" target=\"_blank\">Wikipedia</a>.",
"sieve_preset_1": "E-Mails mit potenziell gefährlichen Dateitypen abweisen",
"sieve_preset_2": "E-Mail eines bestimmten Absenders immer als gelesen markieren",
"sieve_preset_3": "Lautlos löschen, weitere Ausführung von Filtern verhindern",
"sieve_preset_4": "Nach INBOX einsortieren und weitere Filterbearbeitung stoppen",
"sieve_preset_6": "E-Mails mit Nachricht abweisen",
"sieve_preset_7": "Weiterleiten und behalten oder verwerfen"
},
"edit": {
"generate": "generieren",
"app_name": "App Name",
"app_passwd": "App Passwörter",
"sogo_visible": "Alias in SOGo sichtbar",
"sogo_visible_info": "Diese Option hat lediglich Einfluss auf Objekte, die in SOGo darstellbar sind (geteilte oder nicht-geteilte Alias-Adressen mit dem Ziel mindestens einer lokalen Mailbox).",
"syncjob": "Sync-Job bearbeiten",
"save": "Änderungen speichern",
"username": "Benutzername",
"hostname": "Servername",
"encryption": "Verschlüsselung",
"maxage": "Maximales Alter in Tagen einer Nachricht, die kopiert werden soll<br><small>(0 = alle Nachrichten kopieren)</small>",
"subfolder2": "Ziel-Ordner<br><small>(leer = kein Unterordner)</small>",
"mins_interval": "Intervall (min)",
"maxbytespersecond": "Max. Übertragungsrate in Bytes/s (0 für unlimitiert)",
"skipcrossduplicates": "Duplikate auch über Ordner hinweg überspringen (\"first come, first serve\")",
"exclude": "Elemente ausschließen (Regex)",
"max_mailboxes": "Max. Mailboxanzahl",
"title": "Objekt bearbeiten",
"target_address": "Ziel-Adresse(n) <small>(getrennt durch Komma)</small>",
"active": "Aktiv",
"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>",
"force_pw_update": "Erzwinge Passwortänderung bei nächstem Login",
"force_pw_update_info": "Dem Benutzer wird lediglich der Zugang zur %s ermöglicht.",
"sogo_access": "SOGo Zugriffsrecht",
"sogo_access_info": "Zugriff auf SOGo erlauben oder verbieten. Diese Einstellung hat weder Einfluss auf den Zugang sonstiger Dienste noch entfernt sie ein vorhandenes SOGo Benutzerprofil.",
"relay_all_info": "↪ Wenn <b>nicht</b> alle Empfänger-Adressen relayt werden sollen, müssen \"blinde\" Mailboxen für jede Adresse, die relayt werden soll, erstellen werden.",
"relay_unknown_only": "Nur nicht-lokale Mailboxen relayen. Existente Mailboxen werden weiterhin lokal zugestellt.",
"relay_transport_info": "<div class=\"label label-info\">Info</div> Transport Maps können erstellt werden, um individuelle Ziele für eine Relay Domain zu definieren.",
"dont_check_sender_acl": "Absender für Domain %s u. Alias-Dom. nicht prüfen",
"multiple_bookings": "Mehrfaches Buchen",
"kind": "Art",
"resource": "Ressource",
"public_comment": "Öffentlicher Kommentar",
"private_comment": "Privater Kommentar",
"comment_info": "Ein privater Kommentar ist für den Benutzer nicht einsehbar. Ein öffentlicher Kommentar wird als Tooltip im Interface des Benutzers angezeigt.",
"extended_sender_acl_info": "Der DKIM Domainkey der externen Absenderdomain sollte in diesen Server importiert werden, falls vorhanden.<br>\r\n Wird SPF verwendet, muss diesem Server der Versand gestattet werden.<br>\r\n Wird eine Domain oder Alias-Domain zu diesem Server hinzugefügt, die sich mit der externen Absenderadresse überschneidet, wird der externe Absender hier entfernt.<br>\r\n Ein Eintrag @domain.tld erlaubt den Versand als *@domain.tld",
"sender_acl_info": "Wird einem Mailbox-Benutzer A der Versand als Mailbox-Benutzer B gestattet, so erscheint der Absender <b>nicht</b> automatisch in SOGo zur Auswahl.<br>\r\n In SOGo muss zusätzlich eine Delegation eingerichtet werden. Dieses Verhalten trifft nicht auf Alias-Adressen zu.",
"nexthop": "Next Hop",
"delete2duplicates": "Lösche Duplikate im Ziel",
"delete1": "Lösche Nachricht nach Übertragung vom Quell-Server",
"delete2": "Lösche Nachrichten von Ziel-Server, die nicht auf Quell-Server vorhanden sind",
"bcc_dest_format": "BCC-Ziel muss eine gültige E-Mail-Adresse sein.",
"mailbox_quota_def": "Standard-Quota einer Mailbox",
"mbox_rl_info": "Dieses Limit wird auf den SASL Loginnamen angewendet und betrifft daher alle Absenderadressen, die der eingeloggte Benutzer verwendet. Bei Mailbox Ratelimit überwiegt ein Domain-weites Ratelimit.",
"timeout2": "Timeout für Verbindung zum lokalen Host",
"timeout1": "Timeout für Verbindung zum Remote-Host",
"skipcrossduplicates": "Duplikate auch über Ordner hinweg überspringen (\"first come, first serve\")",
"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>",
"public_comment": "Öffentlicher Kommentar",
"private_comment": "Privater Kommentar",
"comment_info": "Ein privater Kommentar ist für den Benutzer nicht einsehbar. Ein öffentlicher Kommentar wird als Tooltip im Interface des Benutzers angezeigt.",
"generate": "generieren",
"syncjob": "Syncjob hinzufügen",
"syncjob_hint": "Passwörter werden unverschlüsselt abgelegt!",
"app_password": "App Passwort hinzufügen",
"app_name": "App Name",
"hostname": "Host",
"destination": "Ziel",
"nexthop": "Next Hop",
"port": "Port",
"username": "Benutzername",
"enc_method": "Verschlüsselung",
"mins_interval": "Abrufintervall (Minuten)",
"exclude": "Elemente ausschließen (Regex)",
"delete2duplicates": "Lösche Duplikate im Ziel",
"delete1": "Lösche Nachricht nach Übertragung vom Quell-Server",
"delete2": "Lösche Nachrichten von Ziel-Server, die nicht auf Quell-Server vorhanden sind",
"relay_all_info": "↪ Wenn <b>nicht</b> alle Empfänger-Adressen relayt werden sollen, müssen \"blinde\" Mailboxen für jede Adresse, die relayt werden soll, erstellen werden.",
"relay_unknown_only": "Nur nicht-lokale Mailboxen relayen. Existente Mailboxen werden weiterhin lokal zugestellt.",
"relay_transport_info": "<div class=\"label label-info\">Info</div> Transport Maps können erstellt werden, um individuelle Ziele für eine Relay Domain zu definieren.",
"alias_address": "Alias-Adresse(n)",
"alias_address_info": "<small>Vollständige E-Mail-Adresse(n) oder @example.com, um alle Nachrichten einer Domain weiterzuleiten. Getrennt durch Komma. <b>Nur eigene Domains</b>.</small>",
"alias_domain_info": "<small>Nur gültige Domains. Getrennt durch Komma.</small>",
"target_address": "Ziel-Adresse(n)",
"target_address_info": "<small>Vollständige E-Mail-Adresse(n). Getrennt durch Komma.</small>",
"alias_domain": "Alias-Domain",
"select": "Bitte auswählen",
"target_domain": "Ziel-Domain",
"kind": "Art",
"mailbox_username": "Benutzername (linker Teil der E-Mail-Adresse)",
"full_name": "Vor- und Nachname",
"quota_mb": "Speicherplatz (MiB)",
"select_domain": "Bitte zuerst eine Domain auswählen",
"password": "Passwort",
"password_repeat": "Passwort (Wiederholung)",
"post_domain_add": "Der SOGo Container, \"sogo-mailcow\" muss nach dem Hinzufügen einer Domain neugestartet werden!<br><br>Im Anschluss sollte die DNS-Konfiguration der Domain überprüft- und \"acme-mailcow\" gegebenenfalls neugestartet werden, um Änderungen am Zertifikat zu übernehmen (autoconfig.<domain>, autodiscover.<domain>).<br>Dieser Schritt ist optional und wird alle 24 Stunden automatisch ausgeführt.",
"goto_null": "Nachrichten sofort verwerfen",
"goto_ham": "Nachrichten als <span class=\"text-success\"><b>Ham</b></span> lernen",
"goto_spam": "Nachrichten als <span class=\"text-danger\"><b>Spam</b></span> lernen",
"validation_success": "Erfolgreich validiert",
"activate_filter_warn": "Alle anderen Filter diesen Typs werden deaktiviert, falls dieses Script aktiv markiert wird.",
"validate": "Validieren",
"sieve_desc": "Kurze Beschreibung",
"sieve_type": "Filtertyp",
"add_domain_restart": "Domain hinzufügen und SOGo neustarten",
"add_domain_only": "Nur Domain hinzufügen",
"mailbox_quota_def": "Standard-Quota einer Mailbox",
"relayhost_wrapped_tls_info": "Bitte <b>keine</b> TLS-wrapped Ports verwenden (etwa SMTPS via Port 465/tcp).<br>\r\nDer Transport wird stattdessen STARTTLS anfordern, um TLS zu verwenden. TLS kann unter \"TLS Policy Maps\" erzwungen werden."
},
"acl": {
+ "pushover": "Pushover",
"spam_alias": "Temporäre E-Mail Aliasse",
"tls_policy": "Verschlüsselungsrichtlinie",
"spam_score": "Spam-Bewertung",
"spam_policy": "Blacklist/Whitelist",
"delimiter_action": "Delimiter Aktionen (tags)",
"syncjobs": "Sync Jobs",
"eas_reset": "EAS-Cache zurücksetzen",
"sogo_profile_reset": "SOGo Profil zurücksetzen",
"quarantine": "Quarantäne-Aktionen",
"quarantine_notification": "Ändern der Quarantäne-Benachrichtigung",
"quarantine_attachments": "Anhänge aus Quarantäne",
"alias_domains": "Alias-Domains hinzufügen",
"login_as": "Einloggen als Mailbox-Benutzer",
"bcc_maps": "BCC Maps",
"filters": "Filter",
"ratelimit": "Rate limit",
"recipient_maps": "Empfängerumschreibungen",
"unlimited_quota": "Unendliche Quota für Mailboxen",
"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.",
"disable_tfa": "Deaktiviere 2FA bis zur nächsten erfolgreichen Anmeldung",
"confirm": "Bestätigen",
"select": "Bitte auswählen",
"waiting_usb_auth": "<i>Warte auf USB-Gerät...</i><br><br>Bitte jetzt den vorgesehenen Taster des U2F USB-Gerätes berühren.",
"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 U2F USB-Gerätes berühren.",
"scan_qr_code": "Bitte scannen Sie jetzt den angezeigten QR-Code:.",
"enter_qr_code": "Falls Sie den angezeigten QR-Code nicht scannen können, verwenden Sie bitte nachstehenden Sicherheitsschlüssel",
"confirm_totp_token": "Bitte bestätigen Sie die Änderung durch Eingabe eines generierten Tokens"
},
"diagnostics": {
"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_name": "Name",
"dns_records_type": "Typ",
"dns_records_data": "Korrekte Daten",
"dns_records_status": "Aktueller Status",
"optional": "Dieser Eintrag ist optional.",
"cname_from_a": "Wert abgeleitet von A/AAAA Eintrag. Wird unterstützt, sofern der Eintrag auf die korrekte Ressource zeigt."
},
"oauth2": {
"scope_ask_permission": "Eine Anwendung hat um die folgenden Berechtigungen gebeten",
"access_denied": "Bitte als Mailbox-Nutzer einloggen, um den Zugriff via OAuth2 zu erlauben."
},
"debug": {
"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>",
"in_memory_logs": "In-memory Logs",
"started_on": "Gestartet am",
"jvm_memory_solr": "JVM Speicherauslastung",
"external_logs": "Externe Logs",
"static_logs": "Statische Logs",
"solr_status": "Solr Status",
"solr_dead": "Solr startet, ist deaktiviert oder temporär nicht erreichbar.",
- "quota_exceeded_scope": "Domain quota exceeded: Only unlimited/unrated mailboxes can be created in this domain scope."
+ "quota_exceeded_scope": "Domain quota exceeded: Only unlimited mailboxes can be created in this domain scope."
},
"user": {
+ "pushover_info": "Push notification settings will apply to all clean (non-spam) mail delivered to <b>%s</b> including aliases (shared, non-shared, tagged).",
+ "verify": "Verify",
+ "pushover_verify": "Verify credentials",
+ "title": "Title",
+ "pushover_title": "Notification title",
+ "text": "Text",
+ "pushover_text": "Notification text ({SUBJECT} will be replaced by mail subject)",
"apple_connection_profile_mailonly": "This connection profile includes IMAP and SMTP configuration parameters for an Apple device.",
"apple_connection_profile_complete": "This connection profile includes IMAP and SMTP parameters as well as CalDAV (calendars) and CardDAV (contacts) pathes for an Apple device.",
"email": "Email",
"email_and_dav": "Email, calendars and contacts",
"generate": "generate",
"create_app_passwd": "Create app password",
"app_passwds": "App passwords",
"app_name": "App name",
"app_hint": "App passwords are alternative passwords for your <b>IMAP and SMTP</b> login. The username remains unchanged.<br>SOGo (including ActiveSync) is not available through app passwords.",
"loading": "Loading...",
"force_pw_update": "You <b>must</b> set a new password to be able to access groupware related services.",
"active_sieve": "Active filter",
"show_sieve_filters": "Show active user sieve filter",
"no_active_filter": "No active filter available",
"messages": "messages",
"in_use": "Used",
"user_settings": "User settings",
"mailbox_details": "Mailbox details",
"change_password": "Change password",
"client_configuration": "Show configuration guides for email clients and smartphones",
"new_password_description": "Requirement: 6 characters long, letters and numbers.",
"spam_aliases": "Temporary email aliases",
"alias": "Alias",
"shared_aliases": "Shared alias addresses",
"shared_aliases_desc": "Shared aliases are not affected by user specific settings such as the spam filter or encryption policy. Corresponding spam filters can only be made by an administrator as a domain-wide policy.",
"direct_aliases": "Direct alias addresses",
"direct_aliases_desc": "Direct alias addresses are affected by spam filter and TLS policy settings.",
"is_catch_all": "Catch-all for domain/s",
"aliases_also_send_as": "Also allowed to send as user",
"aliases_send_as_all": "Do not check sender access for the following domain(s) and its alias domains",
"alias_create_random": "Generate random alias",
"alias_extend_all": "Extend aliases by 1 hour",
"alias_valid_until": "Valid until",
"alias_remove_all": "Remove all aliases",
"alias_time_left": "Time left",
"alias_full_date": "d.m.Y, H:i:s T",
"alias_select_validity": "Period of validity",
"sync_jobs": "Sync jobs",
"expire_in": "Expire in",
"hour": "hour",
"hours": "hours",
"day": "day",
"week": "week",
"weeks": "weeks",
"spamfilter": "Spam filter",
"spamfilter_wl": "Whitelist",
"spamfilter_wl_desc": "Whitelisted email addresses to <b>never</b> classify as spam. Wildcards may be used. A filter is only applied to direct aliases (aliases with a single target mailbox) excluding catch-all aliases and a mailbox itself.",
"spamfilter_bl": "Blacklist",
"spamfilter_bl_desc": "Blacklisted email addresses to <b>always</b> classify as spam and reject. Wildcards may be used. A filter is only applied to direct aliases (aliases with a single target mailbox) excluding catch-all aliases and a mailbox itself.",
"spamfilter_behavior": "Rating",
"spamfilter_table_rule": "Rule",
"spamfilter_table_action": "Action",
"spamfilter_table_empty": "No data to display",
"spamfilter_table_remove": "remove",
"spamfilter_table_add": "Add item",
"spamfilter_green": "Green: this message is not spam",
"spamfilter_yellow": "Yellow: this message may be spam, will be tagged as spam and moved to your junk folder",
"spamfilter_red": "Red: This message is spam and will be rejected by the server",
"spamfilter_default_score": "Default values",
"spamfilter_hint": "The first value describes the \"low spam score\", the second represents the \"high spam score\".",
"tls_policy_warning": "<strong>Warning:</strong> If you decide to enforce encrypted mail transfer, you may lose emails.<br>Messages to not satisfy the policy will be bounced with a hard fail by the mail system.<br>This option applies to your primary email address (login name), all addresses derived from alias domains as well as alias addresses <b>with only this single mailbox</b> as target.",
"tls_policy": "Encryption policy",
"tls_enforce_in": "Enforce TLS incoming",
"tls_enforce_out": "Enforce TLS outgoing",
"no_record": "No record",
"tag_handling": "Set handling for tagged mail",
"tag_in_subfolder": "In subfolder",
"tag_in_subject": "In subject",
"tag_in_none": "Do nothing",
"tag_help_explain": "In subfolder: a new subfolder named after the tag will be created below INBOX (\"INBOX/Facebook\").<br>\r\nIn subject: the tags name will be prepended to the mails subject, example: \"[Facebook] My News\".",
"tag_help_example": "Example for a tagged email address: me<b>+Facebook</b>@example.org",
"eas_reset": "Reset ActiveSync device cache",
"eas_reset_now": "Reset now",
"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!",
"sogo_profile_reset": "Reset SOGo profile",
"sogo_profile_reset_now": "Reset profile now",
"sogo_profile_reset_help": "This will destroy a users SOGo profile and <b>delete all contact and calendar data irretrievable</b>.",
"encryption": "Encryption",
"username": "Username",
"last_run": "Last run",
"excludes": "Excludes",
"interval": "Interval",
"active": "Active",
"action": "Action",
"edit": "Edit",
"remove": "Remove",
"create_syncjob": "Create new sync job",
"sender_acl_disabled": "<span class=\"label label-danger\">Sender check is disabled</span>",
"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.",
"spam_score_reset": "Reset to server default"
},
"admin": {
+ "pushover_info": "Push notification settings will apply to all clean (non-spam) mail delivered to <b>%s</b> including aliases (shared, non-shared, tagged).",
+ "verify": "Verify",
+ "pushover_verify": "Verify credentials",
+ "title": "Title",
+ "pushover_title": "Notification title",
+ "text": "Text",
+ "pushover_text": "Notification text ({SUBJECT} will be replaced by mail subject)",
"spamfilter": "Spam filter",
"domain": "Domain",
"domain_s": "Domain/s",
"rspamd-com_settings": "A setting name will be auto-generated, please see the example presets below. For more details see <a href=\"https://rspamd.com/doc/configuration/settings.html#settings-structure\" target=\"_blank\">Rspamd docs</a>",
"no_new_rows": "No further rows available",
"queue_manager": "Queue manager",
"additional_rows": " additional rows were added",
"private_key": "Private key",
"import": "Import",
"duplicate": "Duplicate",
"import_private_key": "Import private key",
"duplicate_dkim": "Duplicate DKIM record",
"dkim_from": "From",
"dkim_to": "To",
"dkim_from_title": "Source domain to copy data from",
"dkim_to_title": "Target domain/s - will be overwritten",
"f2b_parameters": "Fail2ban parameters",
"f2b_ban_time": "Ban time (s)",
"f2b_max_attempts": "Max. attempts",
"f2b_retry_window": "Retry window (s) for max. attempts",
"f2b_netban_ipv4": "IPv4 subnet size to apply ban on (8-32)",
"f2b_netban_ipv6": "IPv6 subnet size to apply ban on (8-128)",
"f2b_whitelist": "Whitelisted networks/hosts",
"f2b_blacklist": "Blacklisted networks/hosts",
"f2b_list_info": "A blacklisted host or network will always outweigh a whitelist entity. <b>List updates will take a few seconds to be applied.</b>",
"search_domain_da": "Search domains",
"r_inactive": "Inactive restrictions",
"r_active": "Active restrictions",
"r_info": "Greyed out/disabled elements on the list of active restrictions are not known as valid restrictions to mailcow and cannot be moved. Unknown restrictions will be set in order of appearance anyway. <br>You can add new elements in <code>inc/vars.local.inc.php</code> to be able to toggle them.",
"dkim_key_length": "DKIM key length (bits)",
"dkim_key_valid": "Key valid",
"dkim_key_unused": "Key unused",
"dkim_key_missing": "Key missing",
"dkim_add_key": "Add ARC/DKIM key",
"dkim_keys": "ARC/DKIM keys",
"dkim_private_key": "Private key",
"dkim_domains_wo_keys": "Select domains with missing keys",
"rsettings_preset_1": "Disable all but DKIM and rate limit for authenticated users",
"rsettings_preset_2": "Postmasters want spam",
"rsettings_preset_3": "Only allow specific senders for a mailbox (i.e. usage as internal mailbox only)",
"rsettings_insert_preset": "Insert example preset \"%s\"",
"rsetting_add_rule": "Add rule",
"queue_ays": "Please confirm you want to delete all items from the current queue.",
"arrival_time": "Arrival time (server time)",
"message_size": "Message size",
"sender": "Sender",
"recipients": "Recipients",
"admin_domains": "Domain assignments",
"domain_admins": "Domain administrators",
"flush_queue": "Flush queue",
"delete_queue": "Delete all",
"queue_deliver_mail": "Deliver",
"queue_hold_mail": "Hold",
"queue_unhold_mail": "Unhold",
"username": "Username",
"edit": "Edit",
"remove": "Remove",
"save": "Save changes",
"admin": "Administrator",
"admin_details": "Edit administrator details",
"unchanged_if_empty": "If unchanged leave blank",
"yes": "✓",
"no": "✕",
"access": "Access",
"no_record": "No record",
"filter_table": "Filter table",
"empty": "No results",
"time": "Time",
"last_applied": "Last applied",
"reset_limit": "Remove hash",
"hash_remove_info": "Removing a ratelimit hash (if still existing) will reset its counter completely.<br>\r\n Each hash is indicated by an individual color.",
"authed_user": "Auth. user",
"priority": "Priority",
"message": "Message",
"rate_name": "Rate name",
"refresh": "Refresh",
"to_top": "Back to top",
"in_use_by": "In use by",
"forwarding_hosts": "Forwarding Hosts",
"forwarding_hosts_hint": "Incoming messages are unconditionally accepted from any hosts listed here. These hosts are then not checked against DNSBLs or subjected to greylisting. Spam received from them is never rejected, but optionally it can be filed into the Junk folder. The most common use for this is to specify mail servers on which you have set up a rule that forwards incoming emails to your mailcow server.",
"forwarding_hosts_add_hint": "You can either specify IPv4/IPv6 addresses, networks in CIDR notation, host names (which will be resolved to IP addresses), or domain names (which will be resolved to IP addresses by querying SPF records or, in their absence, MX records).",
"relayhosts_hint": "Define sender-dependent transports to be able to select them in a domains configuration dialog.<br>\r\n The transport service is always \"smtp:\". A users individual outbound TLS policy setting is taken into account.<br>\r\n Affects selected domains including alias domains.",
"transports_hint": "→ A transport map entry <b>overrules</b> a sender-dependent transport map</b>.<br>\r\n→ Outbound TLS policy settings per-user are ignored and can only be enforced by TLS policy map entries.<br>\r\n→ The transport service for defined transports is always \"smtp:\".<br>\r\n→ Addresses matching \"/localhost$/\" will always be transported via \"local:\", therefore a \"*\" destination will not apply to those addresses.<br>\r\n→ 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.",
"add_relayhost_hint": "Please be aware that authentication data, if any, will be stored as plain text.",
"add_transports_hint": "Please be aware that authentication data, if any, will be stored as plain text.",
"credentials_transport_warning": "<b>Warning</b>: Adding a new transport map entry will update the credentials for all entries with a matching nexthop column.",
"destination": "Destination",
"nexthop": "Next hop",
"oauth2_info": "The OAuth2 implementation supports the grant type \"Authorization Code\" and issues refresh tokens.<br>\r\nThe server also automatically issues new refresh tokens, after a refresh token has been used.<br><br>\r\n→ The default scope is <i>profile</i>. Only mailbox users can be authenticated against OAuth2. If the scope parameter is omitted, it falls back to <i>profile</i>.<br>\r\n→ The <i>state</i> parameter is required to be sent by the client as part of the authorize request.<br><br>\r\nPathes for requests to the OAuth2 API: <br>\r\n<ul>\r\n <li>Authorization endpoint: <code>/oauth/authorize</code></li>\r\n <li>Token endpoint: <code>/oauth/token</code></li>\r\n <li>Resource page: <code>/oauth/profile</code></li>\r\n</ul>\r\nRegenerating the client secret will not expire existing authorization codes, but they will fail to renew their token.<br><br>\r\nRevoking client tokens will cause immediate termination of all active sessions. All clients need to re-authenticate.",
"oauth2_client_id": "Client ID",
"oauth2_client_secret": "Client secret",
"oauth2_redirect_uri": "Redirect URI",
"oauth2_revoke_tokens": "Revoke all client tokens",
"oauth2_renew_secret": "Generate new client secret",
"relay_from": "\"From:\" address",
"relay_run": "Run test",
"api_allow_from": "Allow API access from these IPs (separated by comma or new line)",
"api_key": "API key",
"api_skip_ip_check": "Skip IP check for API",
"activate_api": "Activate API",
"regen_api_key": "Regenerate API key",
"ban_list_info": "See a list of banned IPs below: <b>network (remaining ban time) - [actions]</b>.<br />IPs queued to be unbanned will be removed from the active ban list within a few seconds.<br />Red labels indicate active permanent bans by blacklisting.",
"unban_pending": "unban pending",
"queue_unban": "queue unban",
"no_active_bans": "No active bans",
"quarantine": "Quarantine",
"rspamd_settings_map": "Rspamd settings map",
"quota_notifications": "Quota notifications",
"quota_notifications_vars": "{{percent}} equals the current quota of the user<br>{{username}} is the mailbox name",
"quota_notifications_info": "Quota notications are sent to users once when crossing 80% and once when crossing 95% usage.",
"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_retention_size": "Retentions per mailbox:<br><small>0 indicates <b>inactive</b>.</small>",
"quarantine_max_size": "Maximum size in MiB (larger elements are discarded):<br><small>0 does <b>not</b> indicate unlimited.</small>",
"quarantine_max_age": "Maximum age in days<br><small>Value must be equal to or greater than 1 day.</small>",
"quarantine_exclude_domains": "Exclude domains and alias-domains",
"quarantine_release_format": "Format of released items",
"quota_notification_html": "Notification email template:<br><small>Leave empty to restore default template.</small>",
"ui_texts": "UI labels and texts",
"help_text": "Override help text below login mask (HTML allowed)",
"title_name": "\"mailcow UI\" website title",
"main_name": "\"mailcow UI\" name",
"apps_name": "\"mailcow Apps\" name",
"ui_footer": "Footer (HTML allowed)",
"customize": "Customize",
"change_logo": "Change logo",
"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.",
"upload": "Upload",
"app_links": "App links",
"app_name": "App name",
"link": "Link",
"remove_row": "Remove row",
"add_row": "Add row",
"reset_default": "Reset to default",
"merged_vars_hint": "Greyed out rows were merged from <code>vars.(local.)inc.php</code> and cannot be modified.",
"sys_mails": "System mails",
"subject": "Subject",
"from": "From",
"include_exclude": "Include/Exclude",
"include_exclude_info": "By default - with no selection - <b>all mailboxes</b> are addressed",
"excludes": "Excludes these recipients",
"includes": "Include these recipients",
"text": "Text",
"activate_send": "Activate send button",
"send": "Send",
"api_info": "The API is a work in progress. The documentation can be found at <a href=\"/api\">/api</a>",
"guid_and_license": "GUID & License",
"guid": "GUID - unique instance ID",
"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>",
"validate_license_now": "Validate GUID against license server",
"customer_id": "Customer ID",
"service_id": "Service ID",
"sal_level": "Moo level",
"lookup_mx": "Match destination against MX (.outlook.com to route all mail targeted to a MX *.outlook.com over this hop)",
"transport_dest_format": "Syntax: example.org, .example.org, *, box@example.org (multiple values can be comma-separated)",
"rspamd_global_filters_agree": "I will be careful!",
"rspamd_global_filters": "Global filter maps",
"rspamd_global_filters_info": "Global filter maps contain different kind of global black and whitelists.",
"rspamd_global_filters_regex": "Their names explain their purpose. All content must contain valid regular expression in the format of \"/pattern/options\" (e.g. <code>/.+@domain\\.tld/i</code>).<br>\r\n Although rudimentary checks are being executed on each line of regex, Rspamds functionality can be broken, if it fails to read the syntax correctly.<br>\r\n Rspamd will try to read the map content when changed. If you experience problems, <a href=\"\" data-toggle=\"modal\" data-container=\"rspamd-mailcow\" data-target=\"#RestartContainer\">restart Rspamd</a> to enforce a map reload."
},
"start": {
"mailcow_apps_detail": "Use a mailcow app to access your mails, calendar, contacts and more.",
"mailcow_panel_detail": "<b>Domain administrators</b> create, modify or delete mailboxes and aliases, change domains and read further information about their assigned domains.<br>\r\n<b>Mailbox users</b> are able to create time-limited aliases (spam aliases), change their password and spam filter settings.",
"imap_smtp_server_auth_info": "Please use your full email address and the PLAIN authentication mechanism.<br>\r\nYour login data will be encrypted by the server-side mandatory encryption.",
"help": "Show/Hide help panel"
},
"quarantine": {
"refresh": "Refresh",
"table_size": "Table size",
"table_size_show_n": "Show %s items",
"disabled_by_config": "The current system configuration disables the quarantine functionality.",
"quarantine": "Quarantine",
"learn_spam_delete": "Learn as spam and delete",
"qinfo": "The quarantine system will save rejected mail to the database, while the sender will <em>not</em> be given the impression of a delivered mail.\r\n <br>\"Learn as spam and delete\" will learn a message as spam via Bayesian theorem and also calculate fuzzy hashes to deny similar messages in the future.\r\n <br>Please be aware that learning multiple messages can be - depending on your system - time consuming.",
"sogo_allow_admin_hint": "Administrative SOGo logins are only available for mailboxes with an existing SOGo profile. A user must have been logged in to SOGo at least once.",
"tls_map_parameters_info": "Empty or parameters, for example: protocols=!SSLv2 ciphers=medium exclude=3DES",
"booking_0": "Always show as free",
"booking_lt0": "Unlimited, but show as busy when booked",
"booking_custom": "Hard-limit to a custom amount of bookings",
"booking_0_short": "Always free",
"booking_lt0_short": "Soft limit",
"booking_custom_short": "Hard limit",
"alias_domain_alias_hint": "Aliases are <b>not</b> applied on domain aliases automatically. An alias address <code>my-alias@domain</code> <b>does not</b> cover the address <code>my-alias@alias-domain</code> (where \"alias-domain\" is an imaginary alias domain for \"domain\").<br>Please use a sieve filter to redirect mail to an external mailbox (see tab \"Filters\" or use SOGo -> Forwarder).",
"domain": "Domain",
"spam_aliases": "Temp. alias",
"multiple_bookings": "Multiple bookings",
"kind": "Kind",
"description": "Description",
"alias": "Alias",
"aliases": "Aliases",
"domains": "Domains",
"mailboxes": "Mailboxes",
"mailbox": "Mailbox",
"resources": "Resources",
"mailbox_quota": "Max. size of a mailbox",
"domain_quota": "Quota",
"active": "Active",
"action": "Action",
"backup_mx": "Backup MX",
"domain_admins": "Domain administrators",
"domain_aliases": "Domain aliases",
"target_domain": "Target domain",
"target_address": "Goto address",
"username": "Username",
"fname": "Full name",
"filter_table": "Filter table",
"yes": "✓",
"no": "✕",
"in_use": "In use (%)",
"msg_num": "Message #",
"remove": "Remove",
"edit": "Edit",
"no_record": "No record for object %s",
"no_record_single": "No record",
"add_domain": "Add domain",
"add_domain_alias": "Add domain alias",
"add_mailbox": "Add mailbox",
"add_resource": "Add resource",
"add_alias": "Add alias",
"add_domain_record_first": "Please add a domain first",
"empty": "No results",
"toggle_all": "Toggle all",
"quick_actions": "Actions",
"activate": "Activate",
"deactivate": "Deactivate",
"owner": "Owner",
"mins_interval": "Interval (min)",
"last_run": "Last run",
"excludes": "Excludes",
"last_run_reset": "Schedule next",
"sieve_info": "You can store multiple filters per user, but only one prefilter and one postfilter can be active at the same time.<br>\r\nEach filter will be processed in the described order. Neither a failed script nor an issued \"keep;\" will stop processing of further scripts.<br><br>Global sieve prefilter → Prefilter → User scripts → Postfilter → Global sieve postfilter",
"bcc_info": "BCC maps are used to silently forward copies of all messages to another address. A recipient map type entry is used, when the local destination acts as recipient of a mail. Sender maps conform to the same principle.<br/>\r\n The local destination will not be informed about a failed delivery.",
"address_rewriting": "Address rewriting",
"recipient_maps": "Recipient maps",
"recipient_map": "Recipient map",
"recipient_map_info": "Recipient maps are used to replace the destination address on a message before it is delivered.",
"recipient_map_old_info": "A recipient maps original destination must be valid email addresses or a domain name.",
"recipient_map_new_info": "Recipient map destination must be a valid email address.",
"recipient_map_old": "Original recipient",
"recipient_map_new": "New recipient",
"add_recipient_map_entry": "Add recipient map",
"mailbox_defquota": "Default mailbox size",
"alias_domain_backupmx": "Alias domain inactive for relay domain",
"insert_preset": "Insert example preset \"%s\"",
"sieve_preset_header": "Please see the example presets below. For more details see <a href=\"https://en.wikipedia.org/wiki/Sieve_(mail_filtering_language)\" target=\"_blank\">Wikipedia</a>.",
"sieve_preset_1": "Discard mail with probable dangerous file types",
"sieve_preset_2": "Always mark the e-mail of a specific sender as seen",
"sieve_preset_3": "Discard silently, stop all further sieve processing",
"sieve_preset_4": "File into INBOX, skip further processing by sieve filters",
"sieve_preset_5": "Auto responder (vacation)",
"sieve_preset_6": "Reject mail with reponse",
"sieve_preset_7": "Redirect and keep/drop"
},
"edit": {
"generate": "generate",
"app_name": "App name",
"app_passwd": "App password",
"sogo_visible": "Alias is visible in SOGo",
"sogo_visible_info": "This option only affects objects, that can be displayed in SOGo (shared or non-shared alias addresses pointing to at least one local mailbox). If hidden, an alias will not appear as selectable sender in SOGo.",
"syncjob": "Edit sync job",
"hostname": "Hostname",
"encryption": "Encryption",
"maxage": "Maximum age of messages in days that will be polled from remote<br><small>(0 = ignore age)</small>",
"maxbytespersecond": "Max. bytes per second <br><small>(0 = unlimited)</small>",
"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>",
"force_pw_update": "Force password update at next login",
"force_pw_update_info": "This user will only be able to login to %s.",
"sogo_access": "Grant access to SOGo",
"sogo_access_info": "Grant or permit access to SOGo. This setting does neither affect access to all other services nor does it delete or change a users existing SOGo profile.",
"relay_all_info": "↪ If you choose <b>not</b> to relay all recipients, you will need to add a (\"blind\") mailbox for every single recipient that should be relayed.",
"relay_unknown_only": "Relay non-existing mailboxes only. Existing mailboxes will be delivered locally.",
"relay_transport_info": "<div class=\"label label-info\">Info</div> You can define transport maps for a custom destination for this domain. If not set, a MX lookup will be made.",
"full_name": "Full name",
"quota_mb": "Quota (MiB)",
"sender_acl": "Allow to send as",
"sender_acl_disabled": "↳ <span class=\"label label-danger\">Sender check is disabled</span>",
"previous": "Previous page",
"unchanged_if_empty": "If unchanged leave blank",
"dont_check_sender_acl": "Disable sender check for domain %s (+ alias domains)",
"multiple_bookings": "Multiple bookings",
"kind": "Kind",
"resource": "Resource",
"relayhost": "Sender-dependent transports",
"public_comment": "Public comment",
"private_comment": "Private comment",
"comment_info": "A private comment is not visible to the user, while a public comment is shown as tooltip when hovering it in a users overview",
"extended_sender_acl_info": "A DKIM domain key should be imported, if available.<br>\r\n Remember to add this server to the corresponding SPF TXT record.<br>\r\n Whenever a domain or alias domain is added to this server, that overlaps with an external address, the external address is removed.<br>\r\n Use @domain.tld to allow to send as *@domain.tld.",
"sender_acl_info": "If mailbox user A is allowed to send as mailbox user B, the sender address is not automatically displayed as selectable \"from\" field in SOGo.<br>\r\n Mailbox user B needs to create a delegation in SOGo to allow mailbox user A to select their address as sender. To delegate a mailbox in SOGo, use the menu (three dots) to the right of your mailbox name in the upper left while in mail view. This behaviour does not apply to alias addresses.",
"nexthop": "Next hop",
"timeout1": "Timeout for connection to remote host",
"timeout2": "Timeout for connection to local host",
"delete2duplicates": "Delete duplicates on destination",
"delete1": "Delete from source when completed",
"delete2": "Delete messages on destination that are not on source",
"sieve_desc": "Short description",
"sieve_type": "Filter type",
"validate_save": "Validate and save",
"client_id": "Client ID",
"client_secret": "Client secret",
"scope": "Scope",
"grant_types": "Grant types",
"redirect_uri": "Redirect/Callback URL",
"spam_score": "Set a custom spam score",
"spam_policy": "Add or remove items to white-/blacklist",
"spam_alias": "Create or change time limited alias addresses",
"bcc_dest_format": "BCC destination must be a single valid email address.",
"mailbox_quota_def": "Default mailbox quota",
"mbox_rl_info": "This rate limit is applied on the SASL login name, it matches any \"from\" address used by the logged-in user. A mailbox rate limit overrides a domain-wide rate limit."
"skipcrossduplicates": "Skip duplicate messages across folders (first come, first serve)",
"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>",
"public_comment": "Public comment",
"private_comment": "Private comment",
"comment_info": "A private comment is not visible to the user, while a public comment is shown as tooltip when hovering it in a users overview",
"generate": "generate",
"syncjob": "Add sync job",
"syncjob_hint": "Be aware that passwords need to be saved plain-text!",
"hostname": "Host",
"destination": "Destination",
"nexthop": "Next hop",
"port": "Port",
"app_name": "App name",
"app_password": "Add app password",
"username": "Username",
"enc_method": "Encryption method",
"mins_interval": "Polling interval (minutes)",
"exclude": "Exclude objects (regex)",
"delete2duplicates": "Delete duplicates on destination",
"delete1": "Delete from source when completed",
"delete2": "Delete messages on destination that are not on source",
"mailbox_quota_m": "Max. quota per mailbox (MiB)",
"domain_quota_m": "Total domain quota (MiB)",
"backup_mx_options": "Backup MX options",
"relay_all": "Relay all recipients",
"relay_domain": "Relay this domain",
"relay_all_info": "↪ If you choose <b>not</b> to relay all recipients, you will need to add a (\"blind\") mailbox for every single recipient that should be relayed.",
"relay_unknown_only": "Relay non-existing mailboxes only. Existing mailboxes will be delivered locally.",
"relay_transport_info": "<div class=\"label label-info\">Info</div> You can define transport maps for a custom destination for this domain. If not set, a MX lookup will be made.",
"alias_address": "Alias address/es",
"alias_address_info": "<small>Full email address/es or @example.com, to catch all messages for a domain (comma-separated). <b>mailcow domains only</b>.</small>",
"alias_domain_info": "<small>Valid domain names only (comma-separated).</small>",
"post_domain_add": "The SOGo container, \"sogo-mailcow\", needs to be restarted after adding a new domain!<br><br>Additionally the domains DNS configuration should be reviewed. Once the DNS configuration is approved, restart \"acme-mailcow\" to automatically generate certificates for your new domain (autoconfig.<domain>, autodiscover.<domain>).<br>This step is optional and will be retried every 24 hours.",
"goto_null": "Silently discard mail",
"goto_ham": "Learn as <span class=\"text-success\"><b>ham</b></span>",
"goto_spam": "Learn as <span class=\"text-danger\"><b>spam</b></span>",
"validation_success": "Validated successfully",
"activate_filter_warn": "All other filters will be deactivated, when active is checked.",
"validate": "Validate",
"sieve_desc": "Short description",
"sieve_type": "Filter type",
"add_domain_restart": "Add domain and restart SOGo",
"add_domain_only": "Add domain only",
"mailbox_quota_def": "Default mailbox quota",
"relayhost_wrapped_tls_info": "Please do <b>not</b> use TLS-wrapped ports (mostly used on port 465).<br>\r\nUse any non-wrapped port and issue STARTTLS. A TLS policy to enforce TLS can be created in \"TLS policy maps\"."
"reload_retry": "- (reload browser if the error persists)",
"key_id_totp": "An identifier for your key",
"error_code": "Error code",
"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>",
"u2f": "U2F authentication",
"none": "Deactivate",
"delete_tfa": "Disable TFA",
"disable_tfa": "Disable TFA until next successful login",
"waiting_usb_auth": "<i>Waiting for USB device...</i><br><br>Please tap the button on your U2F USB device now.",
"waiting_usb_register": "<i>Waiting for USB device...</i><br><br>Please enter your password above and confirm your U2F registration by tapping the button on your U2F USB device.",
"scan_qr_code": "Please scan the following code with your authenticator app or enter the code manually.",
"enter_qr_code": "Your TOTP code if your device cannot scan QR codes",
"confirm_totp_token": "Please confirm your changes by entering the generated token"
},
"oauth2": {
"scope_ask_permission": "An application asked for the following permissions",
"profile": "Profile",
"profile_desc": "View personal information: username, full name, created, modified, active",
"permit": "Authorize application",
"authorize_app": "Authorize application",
"deny": "Deny",
"access_denied": "Please login as mailbox owner to grant access via OAuth2."
},
"diagnostics": {
"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_name": "Name",
"dns_records_type": "Type",
"dns_records_data": "Correct Data",
"dns_records_status": "Current State",
"optional": "This record is optional.",
"cname_from_a": "Value derived from A/AAAA record. This is supported as long as the record points to the correct resource."
},
"debug": {
"system_containers": "System & Containers",
"started_on": "Started on",
"jvm_memory_solr": "JVM memory usage",
"solr_status": "Solr status",
"solr_dead": "Solr is starting, disabled or died.",
"logs": "Logs",
"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>",