Commit 58023ffd authored by Florian Schaal's avatar Florian Schaal
Browse files

use doveadm instead of 'du -s' for email-quota

parent 4ad9487d
......@@ -77,10 +77,20 @@ class cronjob_monitor_email_quota extends cronjob {
$mailboxes = $app->db->queryAllRecords("SELECT email,maildir FROM mail_user WHERE server_id = $server_id");
if(is_array($mailboxes)) {
//* with dovecot we can use doveadm instead of 'du -s'
$dovecot = false;
if (isset($mail_config['pop3_imap_daemon']) && $mail_config ['pop3_imap_daemon'] = 'dovecot' && is_executable('doveadm')) {
$dovecot = true;
}
foreach($mailboxes as $mb) {
$email = $mb['email'];
$email_parts = explode('@', $mb['email']);
$filename = $mb['maildir'].'/.quotausage';
if(!file_exists($filename) && $dovecot) {
exec('doveadm quota recalc -u '.$email);
}
if(file_exists($filename) && !is_link($filename)) {
$quotafile = file($filename);
preg_match('/storage.*?([0-9]+)/s', implode('',$quotafile), $storage_value);
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment