Fix: Mailbox Stats über Dovecot mit config/mailpool.php

main v1.0.52
boban 2025-10-26 18:00:40 +01:00
parent 7a636fb496
commit ecbe123088
1 changed files with 21 additions and 7 deletions

View File

@ -70,14 +70,28 @@ class SpamAvCard extends Component
$reject = preg_match('/\breject\s*:\s*(\d+)/i', $out, $m3) ? (int)$m3[1] : 0; $reject = preg_match('/\breject\s*:\s*(\d+)/i', $out, $m3) ? (int)$m3[1] : 0;
// Versionen // Versionen
$rspamdVer = trim(@shell_exec('rspamadm version 2>/dev/null') ?? '') ?: ''; // $rspamdVer = trim(@shell_exec('rspamadm version 2>/dev/null') ?? '') ?: '';
$clamVer = trim(@shell_exec('clamd --version 2>/dev/null || clamscan --version 2>/dev/null') ?? '') ?: ''; // $clamVer = trim(@shell_exec('clamd --version 2>/dev/null || clamscan --version 2>/dev/null') ?? '') ?: '';
//
// // Letztes Signatur-Update aus freshclam.log
// $sigUpdated = null;
// $log = @shell_exec('grep -i "Database updated" /var/log/clamav/freshclam.log | tail -n1 2>/dev/null');
// if ($log) {
// $sigUpdated = trim($log);
// }
// Letztes Signatur-Update aus freshclam.log $clamLine = trim(shell_exec('clamd --version 2>/dev/null || clamscan --version 2>/dev/null') ?? '');
$clamVer = $clamLine ?: '';
$sigUpdated = null; $sigUpdated = null;
$log = @shell_exec('grep -i "Database updated" /var/log/clamav/freshclam.log | tail -n1 2>/dev/null'); if ($clamLine && preg_match('#/([^/]+ [0-9]{2} [0-9:]{8} [0-9]{4})$#', $clamLine, $m)) {
if ($log) { // Beispiel-Match: "Sun Oct 26 09:42:43 2025"
$sigUpdated = trim($log); $sigUpdated = $m[1];
}
// Fallback: Versuch über journalctl (falls adm-Rechte vorhanden)
if (!$sigUpdated) {
$jl = trim(shell_exec('journalctl -u freshclam -n 50 --no-pager 2>/dev/null | grep -i "Database updated" | tail -n1') ?? '');
if ($jl) $sigUpdated = $jl;
} }
return [ return [
@ -85,7 +99,7 @@ class SpamAvCard extends Component
'ham' => $ham, 'ham' => $ham,
'spam' => $spam, 'spam' => $spam,
'reject' => $reject, 'reject' => $reject,
'rspamdVer' => $rspamdVer, 'clamLine' => $clamLine,
'clamVer' => $clamVer, 'clamVer' => $clamVer,
'sigUpdated' => $sigUpdated, 'sigUpdated' => $sigUpdated,
]; ];