enhance master-cronjob parameter usage, you can now use --force-[cronname] to force any cronjob you like; now show mailbox sizes of emial accounts in the customers email overview, fixes #1007
Signed-off-by: Michael Kaufmann (d00p) <d00p@froxlor.org>
This commit is contained in:
24
scripts/jobs/cron_mailboxsize.php
Normal file
24
scripts/jobs/cron_mailboxsize.php
Normal file
@@ -0,0 +1,24 @@
|
||||
<?php
|
||||
|
||||
fwrite($debugHandler, "calculating mailspace usage\n");
|
||||
|
||||
$maildirs = $db->query("SELECT `id`, CONCAT(`homedir`, `maildir`) AS `maildirpath` FROM `".TABLE_MAIL_USERS."` ORDER BY `id`");
|
||||
|
||||
while ($maildir = $db->fetch_array($maildirs)) {
|
||||
|
||||
$_maildir = makeCorrectDir($maildir['maildirpath']);
|
||||
|
||||
if (file_exists($_maildir)
|
||||
&& is_dir($_maildir)
|
||||
) {
|
||||
$back = safe_exec('du -sb ' . escapeshellarg($_maildir) . '');
|
||||
foreach ($back as $backrow) {
|
||||
$emailusage = explode(' ', $backrow);
|
||||
}
|
||||
$emailusage = floatval($emailusage['0']);
|
||||
unset($back);
|
||||
$db->query("UPDATE `".TABLE_MAIL_USERS."` SET `mboxsize` = '".(int)$emailusage."' WHERE `id` ='".(int)$maildir['id']."'");
|
||||
} else {
|
||||
fwrite($debugHandler, 'maildir ' . $_maildir . ' does not exist' . "\n");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user