andryyy 2019-11-11 23:24:55 +01:00
commit b2cff8226e
5 changed files with 40 additions and 27 deletions

View File

@ -624,7 +624,7 @@ function quarantine($_action, $_data = null) {
break;
case 'get':
if ($_SESSION['mailcow_cc_role'] == "user") {
$stmt = $pdo->prepare('SELECT `id`, `qid`, `subject`, LOCATE("VIRUS_FOUND", `symbols`) AS `virus_flag`, `score`, `rcpt`, `sender`, UNIX_TIMESTAMP(`created`) AS `created` FROM `quarantine` WHERE `rcpt` = :mbox');
$stmt = $pdo->prepare('SELECT `id`, `qid`, `subject`, LOCATE("VIRUS_FOUND", `symbols`) AS `virus_flag`, `score`, `rcpt`, `sender`, UNIX_TIMESTAMP(`created`) AS `created`, `notified` FROM `quarantine` WHERE `rcpt` = :mbox');
$stmt->execute(array(':mbox' => $_SESSION['mailcow_cc_username']));
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
while($row = array_shift($rows)) {
@ -632,7 +632,7 @@ function quarantine($_action, $_data = null) {
}
}
elseif ($_SESSION['mailcow_cc_role'] == "admin") {
$stmt = $pdo->query('SELECT `id`, `qid`, `subject`, LOCATE("VIRUS_FOUND", `symbols`) AS `virus_flag`, `score`, `rcpt`, `sender`, UNIX_TIMESTAMP(`created`) AS `created` FROM `quarantine`');
$stmt = $pdo->query('SELECT `id`, `qid`, `subject`, LOCATE("VIRUS_FOUND", `symbols`) AS `virus_flag`, `score`, `rcpt`, `sender`, UNIX_TIMESTAMP(`created`) AS `created`, `notified` FROM `quarantine`');
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
while($row = array_shift($rows)) {
$q_meta[] = $row;
@ -641,7 +641,7 @@ function quarantine($_action, $_data = null) {
else {
$domains = array_merge(mailbox('get', 'domains'), mailbox('get', 'alias_domains'));
foreach ($domains as $domain) {
$stmt = $pdo->prepare('SELECT `id`, `qid`, `subject`, LOCATE("VIRUS_FOUND", `symbols`) AS `virus_flag`, `score`, `rcpt`, `sender`, UNIX_TIMESTAMP(`created`) AS `created` FROM `quarantine` WHERE `rcpt` REGEXP :domain');
$stmt = $pdo->prepare('SELECT `id`, `qid`, `subject`, LOCATE("VIRUS_FOUND", `symbols`) AS `virus_flag`, `score`, `rcpt`, `sender`, UNIX_TIMESTAMP(`created`) AS `created`, `notified` FROM `quarantine` WHERE `rcpt` REGEXP :domain');
$stmt->execute(array(':domain' => '@' . $domain . '$'));
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
while($row = array_shift($rows)) {

View File

@ -15,10 +15,11 @@ jQuery(function($){
{"name":"id","type":"ID","filterable": false,"sorted": true,"direction":"DESC","title":"ID","style":{"width":"50px"}},
{"name":"qid","breakpoints":"all","type":"text","title":lang.qid,"style":{"width":"125px"}},
{"name":"sender","title":lang.sender},
{"name":"subject","title":lang.subj, "type": "text"},
{"name":"rcpt","title":lang.rcpt, "breakpoints":"xs sm md", "type": "text"},
{"name":"virus","title":lang.danger, "type": "text"},
{"name":"score","title": lang.spam_score, "type": "text"},
{"name":"subject","title":lang.subj, "type": "text"},
{"name":"notified","title":lang.notified, "type": "text"},
{"name":"created","formatter":function unix_time_format(tm) { var date = new Date(tm ? tm * 1000 : 0); return date.toLocaleString();},"title":lang.received,"style":{"width":"170px"}},
{"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right"},"style":{"width":"220px"},"type":"html","title":lang.action,"breakpoints":"xs sm md"}
],
@ -44,6 +45,11 @@ jQuery(function($){
} else {
item.virus = '<span class="dot-neutral"></span>';
}
if(item.notified > 0) {
item.notified = '&#10004;';
} else {
item.notified = '&#10006;';
}
if (acl_data.login_as === 1) {
item.action = '<div class="btn-group">' +
'<a href="#" data-item="' + encodeURI(item.id) + '" class="btn btn-xs btn-info show_qid_info"><span class="glyphicon glyphicon-modal-window"></span> ' + lang.show_item + '</a>' +

View File

@ -534,7 +534,8 @@
"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."
"confirm_delete": "Bestätigen Sie die Löschung dieses Elements.",
"notified": "Benachrichtigt"
},
"mailbox": {
"tls_policy_maps": "TLS-Richtlinien",

View File

@ -533,7 +533,8 @@
"confirm_delete": "Confirm the deletion of this element.",
"qhandler_success": "Request successfully sent to the system. You can now close the window.",
"release_body": "We have attached your message as eml file to this message.",
"release_subject": "Potentially damaging quarantine item %s"
"release_subject": "Potentially damaging quarantine item %s",
"notified": "Notified"
},
"mailbox": {
"tls_policy_maps": "TLS policy maps",

View File

@ -52,7 +52,7 @@
"rl_timeframe": "Ratelimit-tijdsbestek is ongeldig",
"invalid_bcc_map_type": "Ongeldig BCC-map type",
"bcc_empty": "BCC-bestemming dient ingevuld te worden",
"bcc_must_be_email": "BCC-bestemming %s is geen geldig e-mailadres",
"bcc_must_be_email": "BCC-bestemming %s is geen geldig mailadres",
"bcc_exists": "BCC-map %s bestaat voor type %s",
"private_key_error": "Privésleutel-fout: %s",
"map_content_empty": "Inhoud dient ingevuld te zijn",
@ -221,13 +221,13 @@
"user_settings": "Gebruikersinstellingen",
"mailbox_details": "Postvakdetails",
"change_password": "Verander wachtwoord",
"client_configuration": "Toon configuratiegidsen voor e-mailprogramma's",
"client_configuration": "Toon configuratiegidsen voor mailprogramma's",
"new_password": "Nieuw wachtwoord",
"save_changes": "Wijzigingen opslaan",
"password_now": "Huidig wachtwoord",
"new_password_repeat": "Herhaal wachtwoord",
"new_password_description": "Vereisten: 6 tekens lang, letters en nummers",
"spam_aliases": "Tijdelijk e-mailadres",
"spam_aliases": "Tijdelijk mailadres",
"alias": "Alias",
"shared_aliases": "Gedeelde aliasadressen",
"shared_aliases_desc": "Een gedeeld aliasadres wordt niet beïnvloed door gebruiker-specifieke instellingen. Een aangepast spamfilter kan eventueel worden ingesteld door een beheerder.",
@ -252,9 +252,9 @@
"weeks": "weken",
"spamfilter": "Spamfilter",
"spamfilter_wl": "Whitelist",
"spamfilter_wl_desc": "Zet e-mailadressen op de whitelist om ze <b>nooit</b> als spam te markeren.<br>Deze lijst wordt niet toegepast op een gedeeld aliasadres.<br>Wildcards (*) zijn toegestaan.",
"spamfilter_wl_desc": "Zet mailadressen op de whitelist om ze <b>nooit</b> als spam te markeren.<br>Deze lijst wordt niet toegepast op een gedeeld aliasadres.<br>Wildcards (*) zijn toegestaan.",
"spamfilter_bl": "Blacklist",
"spamfilter_bl_desc": "Zet e-mailadressen op de blacklist om ze <b>altijd</b> als spam te markeren.<br>Deze lijst wordt niet toegepast op een gedeeld aliasadres.<br>Wildcards (*) zijn toegestaan.",
"spamfilter_bl_desc": "Zet mailadressen op de blacklist om ze <b>altijd</b> als spam te markeren.<br>Deze lijst wordt niet toegepast op een gedeeld aliasadres.<br>Wildcards (*) zijn toegestaan.",
"spamfilter_behavior": "Beoordeling",
"spamfilter_table_rule": "Regel",
"spamfilter_table_action": "Handeling",
@ -270,17 +270,17 @@
"waiting": "Wachten",
"status": "Status",
"running": "Wordt uitgevoerd",
"tls_policy_warning": "<strong>Let wel:</strong> Door versleuteling te forceren, worden mogelijk niet alle e-mails afgeleverd.<br>Berichten die niet aan het ingestelde beleid voldoen, worden resoluut geweigerd.<br>Dit is van toepassing op het primaire e-mailadres, inclusief alle <b>directe</b> aliasadressen.",
"tls_policy_warning": "<strong>Let wel:</strong> Door versleuteling te forceren, worden mogelijk niet alle mails afgeleverd.<br>Berichten die niet aan het ingestelde beleid voldoen, worden resoluut geweigerd.<br>Dit is van toepassing op het primaire mailadres, inclusief alle <b>directe</b> aliasadressen.",
"tls_policy": "Versleutelingsbeleid",
"tls_enforce_in": "Vereis inkomend",
"tls_enforce_out": "Vereis uitgaand",
"no_record": "Geen vermelding",
"tag_handling": "E-mailtags",
"tag_handling": "Mail-tags",
"tag_in_subfolder": "In submap",
"tag_in_subject": "In onderwerp",
"tag_in_none": "Niets doen",
"tag_help_explain": "In submap: er wordt een nieuwe map aangemaakt, genoemd naar de tag (bijv.: \"INBOX/Tesla\").<br>In onderwerp: de tag wordt vóór het oorspronkelijke onderwerp geplaatst (bijv.: \"[Tesla] Uw serviceafspraak\").",
"tag_help_example": "Voorbeeld van een e-maildres met tag: ik<b>+Tesla</b>@example.org",
"tag_help_example": "Voorbeeld van een maildres met tag: ik<b>+Tesla</b>@example.org",
"eas_reset": "Herstel ActiveSync-apparaatcache",
"eas_reset_now": "Herstel nu",
"eas_reset_help": "In de meeste gevallen verhelpt dit problemen met ActiveSync op je apparaten<br><b>Let wel:</b> alle mails, contacten en agenda's zullen opnieuw gedownload worden!",
@ -310,7 +310,7 @@
"spamfilter": "Spamfilter",
"domain": "Domein",
"domain_s": "Domein(en)",
"rspamd-com_settings": "<a href=\"https://rspamd.com/doc/configuration/settings.html#settings-structure\" target=\"_blank\">Rspamd documentatie</a> - Een beschrijving voor deze instelling zal automatisch worden gegenereerd, bekijk de onderstaande presets voor meer info.",
"rspamd-com_settings": "Een beschrijving voor deze instelling zal automatisch worden gegenereerd, gebruik de onderstaande presets als voorbeeld. Raadpleeg de <a href=\"https://rspamd.com/doc/configuration/settings.html#settings-structure\" target=\"_blank\">Rspamd-documentatie</a> voor meer informatie.",
"no_new_rows": "Er zijn geen extra rijen beschikbaar",
"queue_manager": "Wachtrijbeheerder",
"additional_rows": " extra rijen zijn toegevoegd",
@ -491,16 +491,16 @@
"rspamd_global_filters_info": "Ieder globaal filter heeft zijn eigen functie, zie de namen. De velden kunnen enkel regular expressions bevatten met het formaat \"/pattern/options\", bijvoorbeeld <code>/.+@domain\\.tld/i</code>.<br>Ondanks dat alle invoer wordt gecontroleerd op fouten, is het toch mogelijk dat Rspamd onbruikbaar wordt als deze de invoer niet kan lezen.<br>Als je problemen ervaart, <a href=\"\" data-toggle=\"modal\" data-container=\"rspamd-mailcow\" data-target=\"#RestartContainer\">herstart Rspamd</a> dan om de filters opnieuw te laten lezen."
},
"start": {
"mailcow_apps_detail": "Gebruik een Mailcow-app om je e-mails, agenda, contacten en meer te bekijken.",
"mailcow_apps_detail": "Gebruik een Mailcow-app om je mails, agenda, contacten en meer te bekijken.",
"mailcow_panel_detail": "<b>Domeinbeheerders</b> kunnen postvakken en aliassen aanmaken, wijzigen en verwijderen. Ook kunnen ze domeinen aanpassen en informatie over deze verkrijgen.<br><b>Gebruikers</b> kunnen tijdelijke aliassen aanmaken, hun wachtwoord aanpassen en de spamfilterinstellingen wijzigen.",
"imap_smtp_server_auth_info": "Gebruik je volledige e-mailadres en het bijbehorende (onversleutelde) verificatiemechanisme.<br>De aanmeldgegevens worden versleuteld verstuurd.",
"imap_smtp_server_auth_info": "Gebruik je volledige mailadres en het bijbehorende (onversleutelde) verificatiemechanisme.<br>De aanmeldgegevens worden versleuteld verstuurd.",
"help": "Toon/verberg hulppaneel"
},
"quarantine": {
"disabled_by_config": "De huidige systeemconfiguratie deactiveert de quarantainefunctionaliteit.",
"quarantine": "Quarantaine",
"learn_spam_delete": "Onthoud als spam en verwijder",
"qinfo": "Het quarantainesysteem slaat geweigerde e-mail op, terwijl het voor de afzender lijkt alsof deze <em>niet</em> ontvangen is.<br>\"Onthoud als spam en verwijder\" traint het systeem om soortgelijke e-mails in de toekomst weer als spam te markeren.<br>Wees er van bewust dat wanneer er meerdere berichten worden onderzocht, dit mogelijk enige tijd kan duren.",
"qinfo": "Het quarantainesysteem slaat geweigerde mail op, terwijl het voor de afzender lijkt alsof deze <em>niet</em> ontvangen is.<br>\"Onthoud als spam en verwijder\" traint het systeem om soortgelijke mails in de toekomst weer als spam te markeren.<br>Wees er van bewust dat wanneer er meerdere berichten worden onderzocht, dit mogelijk enige tijd kan duren.",
"download_eml": "Download (.eml)",
"release": "Geef vrij",
"empty": "Geen resultaten",
@ -530,7 +530,8 @@
"confirm_delete": "Bevestig de verwijdering van dit item.",
"qhandler_success": "Verzoek met succes verzonden naar het systeem. Je kunt het venster nu veilig sluiten.",
"release_body": "We hebben het oorspronkelijke bericht als los bestand meegestuurd. Klik erop om deze weer te geven.",
"release_subject": "Mogelijk schadelijk quarantaine-item %s"
"release_subject": "Mogelijk schadelijk quarantaine-item %s",
"notified": "Verwittigd"
},
"mailbox": {
"tls_policy_maps": "Globaal versleutelingsbeleid",
@ -635,13 +636,17 @@
"recipient_maps": "Ontvanger-maps",
"recipient_map": "Ontvanger-map",
"recipient_map_info": "Ontvanger-maps worden gebruikt om het doeladres van een bericht te vervangen voordat het in een postvak terecht komt.",
"recipient_map_old_info": "De oorspronkelijke bestemming van een ontvanger-map dient een geldig e-mailadres of domeinnaam te zijn.",
"recipient_map_new_info": "De bestemming van een ontvanger-map dient een geldig e-mailadres te zijn.",
"recipient_map_old_info": "De oorspronkelijke bestemming van een ontvanger-map dient een geldig mailadres of domeinnaam te zijn.",
"recipient_map_new_info": "De bestemming van een ontvanger-map dient een geldig mailadres te zijn.",
"recipient_map_old": "Oorspronkelijke ontvanger",
"recipient_map_new": "Nieuwe ontvanger",
"add_recipient_map_entry": "Voeg ontvanger-map toe",
"mailbox_defquota": "Standaard postvakgrootte",
"alias_domain_backupmx": "Aliasdomein inactief voor doorstuurdomein"
"alias_domain_backupmx": "Aliasdomein inactief voor doorstuurdomein",
"insert_preset": "Voeg voorbeelden in \"%s\"",
"sieve_preset_header": "Zie de onderstaande voorbeelden. Raadpleeg <a href=\"https://en.wikipedia.org/wiki/Sieve_(mail_filtering_language)\" target=\"_blank\">Wikipedia</a> voor meer informatie.",
"sieve_preset_1": "Weiger mail met mogelijk schadelijke bestandstypes",
"sieve_preset_2": "Markeer de mail van een specifieke afzender altijd als gelezen"
},
"edit": {
"sogo_visible": "Alias is zichtbaar in SOGo",
@ -719,7 +724,7 @@
"spam_score": "Stel een aangepaste spamscore in",
"spam_policy": "Voeg onderdelen toe, of verwijder onderdelen van de white- of blacklist",
"spam_alias": "Maak een nieuw tijdelijk alias aan, of pas deze aan",
"bcc_dest_format": "Een BCC-bestemming dient één geldig e-mailadres te zijn.",
"bcc_dest_format": "Een BCC-bestemming dient één geldig mailadres te zijn.",
"mailbox_quota_def": "Standaard postvakquotum",
"mbox_rl_info": "Deze ratelimit wordt toegepast op de postvakgebruiker, en geldt voor elk \"van\"-adres gebruikt door de huidige postvakgebruiker. Een postvak-ratelimit gaat boven een domein-ratelimit."
},
@ -764,22 +769,22 @@
"relay_domain": "Schakel dit domein door",
"relay_all_info": "<small>Wanneer er wordt gekozen om <b>niet</b> alle ontvangers door te schakelen, dient er per ontvanger een blind postvak aangemaakt te worden.</small>",
"alias_address": "Aliasadres(sen)",
"alias_address_info": "<small>Volledig(e) e-mailadres(sen) of @example.com, om een catch-all aan te maken voor een domein (kommagescheiden). <b>Enkel Mailcow-domeinen</b>.</small>",
"alias_address_info": "<small>Volledig(e) mailadres(sen) of @example.com, om een catch-all aan te maken voor een domein (kommagescheiden). <b>Enkel Mailcow-domeinen</b>.</small>",
"alias_domain_info": "<small>Enkel geldige domeinnamen (kommagescheiden).</small>",
"target_address": "Doeladressen",
"target_address_info": "<small>Volledig(e) e-mailadres(sen) (kommagescheiden).</small>",
"target_address_info": "<small>Volledig(e) mailadres(sen) (kommagescheiden).</small>",
"alias_domain": "Aliasdomein",
"select": "Selecteer...",
"target_domain": "Doeldomein",
"kind": "Soort",
"mailbox_username": "Gebruikersnaam (linkergedeelte van een e-mailadres)",
"mailbox_username": "Gebruikersnaam (linkergedeelte van een mailadres)",
"full_name": "Volledige naam",
"quota_mb": "Quotum (MiB)",
"select_domain": "Selecteer eerst een domein",
"password": "Wachtwoord",
"password_repeat": "Herhaal wachtwoord",
"restart_sogo_hint": "SOGo dient opnieuw opgestart te worden nadat een domein is toegevoegd",
"goto_null": "Houd e-mail achterwege",
"goto_null": "Houd mail achterwege",
"goto_ham": "Leer als <span class=\"text-success\"><b>ham</b></span>",
"goto_spam": "Leer als <span class=\"text-danger\"><b>spam</b></span>",
"validation_success": "Succesvol geverifieerd",