From 9db56726bed5301ca9df51e56c3c3ffda0117464 Mon Sep 17 00:00:00 2001 From: tbrehm <t.brehm@ispconfig.org> Date: Thu, 7 Jun 2012 12:18:32 +0000 Subject: [PATCH] Implemented: FS#2107 - Add option to disable mailbox quota statistics --- install/tpl/server.ini.master | 1 + interface/web/admin/form/server_config.tform.php | 6 ++++++ interface/web/admin/lib/lang/en_server_config.lng | 1 + interface/web/admin/templates/server_config_mail_edit.htm | 6 ++++++ server/mods-available/monitor_core_module.inc.php | 6 +++++- 5 files changed, 19 insertions(+), 1 deletion(-) diff --git a/install/tpl/server.ini.master b/install/tpl/server.ini.master index 008cfc9f50..567eb32d92 100644 --- a/install/tpl/server.ini.master +++ b/install/tpl/server.ini.master @@ -31,6 +31,7 @@ relayhost_user= relayhost_password= mailbox_size_limit=0 message_size_limit=0 +mailbox_quota_stats=y realtime_blackhole_list= [getmail] diff --git a/interface/web/admin/form/server_config.tform.php b/interface/web/admin/form/server_config.tform.php index 6af44981c4..1ac88b95a1 100644 --- a/interface/web/admin/form/server_config.tform.php +++ b/interface/web/admin/form/server_config.tform.php @@ -292,6 +292,12 @@ $form["tabs"]['mail'] = array( 'width' => '10', 'maxlength' => '15' ), + 'mailbox_quota_stats' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n',1 => 'y') + ), 'realtime_blackhole_list' => array( 'datatype' => 'VARCHAR', 'formtype' => 'TEXT', diff --git a/interface/web/admin/lib/lang/en_server_config.lng b/interface/web/admin/lib/lang/en_server_config.lng index 0d237bf0f1..cca491ee1a 100644 --- a/interface/web/admin/lib/lang/en_server_config.lng +++ b/interface/web/admin/lib/lang/en_server_config.lng @@ -163,4 +163,5 @@ $wb["php_settings_txt"] = 'PHP Settings'; $wb["apps_vhost_settings_txt"] = 'Apps Vhost Settings'; $wb["awstats_settings_txt"] = 'AWStats Settings'; $wb["firewall_txt"] = 'Firewall'; +$wb["mailbox_quota_stats_txt"] = 'Mailbox quota statistic'; ?> \ No newline at end of file diff --git a/interface/web/admin/templates/server_config_mail_edit.htm b/interface/web/admin/templates/server_config_mail_edit.htm index 11399b319e..cb67f29ac4 100644 --- a/interface/web/admin/templates/server_config_mail_edit.htm +++ b/interface/web/admin/templates/server_config_mail_edit.htm @@ -71,6 +71,12 @@ <label for="message_size_limit">{tmpl_var name='message_size_limit_txt'}</label> <input name="message_size_limit" id="message_size_limit" value="{tmpl_var name='message_size_limit'}" size="10" maxlength="15" type="text" class="textInput formLengthLimit" /> MB </div> + <div class="ctrlHolder"> + <p class="label">{tmpl_var name='mailbox_quota_stats_txt'}</p> + <div class="multiField"> + {tmpl_var name='mailbox_quota_stats'} + </div> + </div> <div class="ctrlHolder"> <label for="realtime_blackhole_list">{tmpl_var name='realtime_blackhole_list_txt'}</label> <input name="realtime_blackhole_list" id="realtime_blackhole_list" value="{tmpl_var name='realtime_blackhole_list'}" size="40" maxlength="255" type="text" class="textInput" /> {tmpl_var name='realtime_blackhole_list_note_txt'} diff --git a/server/mods-available/monitor_core_module.inc.php b/server/mods-available/monitor_core_module.inc.php index fa1b189f3a..2bc95d8564 100644 --- a/server/mods-available/monitor_core_module.inc.php +++ b/server/mods-available/monitor_core_module.inc.php @@ -117,7 +117,7 @@ class monitor_core_module { } private function _monitorEmailQuota() { - global $app; + global $app, $conf; /* * This monitoring is expensive, so do it only every 15 minutes @@ -125,6 +125,10 @@ class monitor_core_module { $min = @date('i'); if ($min % 15 != 0) return; + $app->uses('getconf'); + $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); + if($mail_config['mailbox_quota_stats'] == 'n') return; + /* * First we get the Monitoring-data from the tools -- GitLab