From 9eb7b343b2db5bb757e07c84322b2fe30bea9229 Mon Sep 17 00:00:00 2001 From: tbrehm <t.brehm@ispconfig.org> Date: Wed, 27 Oct 2010 16:22:49 -0400 Subject: [PATCH] Fixed: FS#1365 - hard disk quota in the frontend wrong --- interface/web/sites/templates/user_quota_stats_list.htm | 12 +++--- server/mods-available/monitor_core_module.inc.php | 32 ++++++++++++---- interface/web/sites/user_quota_stats.php | 26 ++++++++++++- 3 files changed, 54 insertions(+), 16 deletions(-) diff --git a/interface/web/sites/templates/user_quota_stats_list.htm b/interface/web/sites/templates/user_quota_stats_list.htm index acee810..f7b7eaa 100644 --- a/interface/web/sites/templates/user_quota_stats_list.htm +++ b/interface/web/sites/templates/user_quota_stats_list.htm @@ -9,9 +9,9 @@ <tr> <th class="tbl_col_domain" scope="col"><tmpl_var name="domain_txt"></th> <th class="tbl_col_system_user" scope="col"><tmpl_var name="system_user_txt"></th> - <th class="tbl_col_system_user" scope="col"><tmpl_var name="used_txt"></th> - <th class="tbl_col_system_user" scope="col"><tmpl_var name="soft_txt"></th> - <th class="tbl_col_system_user" scope="col"><tmpl_var name="hard_txt"></th> + <th class="tbl_col_system_user" scope="col" style="text-align:right;"><tmpl_var name="used_txt"></th> + <th class="tbl_col_system_user" scope="col" style="text-align:right;"><tmpl_var name="soft_txt"></th> + <th class="tbl_col_system_user" scope="col" style="text-align:right;"><tmpl_var name="hard_txt"></th> <th class="tbl_col_buttons" scope="col"> </th> </tr> <tr> @@ -28,9 +28,9 @@ <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>"> <td class="tbl_col_domain"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="domain"}</a></td> <td class="tbl_col_system_user"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="system_user"}</a></td> - <td class="tbl_col_used"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="used"}</a></td> - <td class="tbl_col_soft"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="soft"}</a></td> - <td class="tbl_col_hard"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="hard"}</a></td> + <td class="tbl_col_used" style="text-align:right;"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="used"}</a></td> + <td class="tbl_col_soft" style="text-align:right;"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="soft"}</a></td> + <td class="tbl_col_hard" style="text-align:right;"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="hard"}</a></td> <td class="tbl_col_buttons"> <div class="buttons icons16"> diff --git a/interface/web/sites/user_quota_stats.php b/interface/web/sites/user_quota_stats.php index f3b7f0d..0109dc9 100644 --- a/interface/web/sites/user_quota_stats.php +++ b/interface/web/sites/user_quota_stats.php @@ -45,12 +45,34 @@ $rec['soft'] = $monitor_data['user'][$username]['soft']; $rec['hard'] = $monitor_data['user'][$username]['hard']; + if($rec['used'] > 1024) { + $rec['used'] = round($rec['used'] / 1024,2).' MB'; + } else { + $rec['used'] .= ' KB'; + } + + if($rec['soft'] > 1024) { + $rec['soft'] = round($rec['soft'] / 1024,2).' MB'; + } else { + $rec['soft'] .= ' KB'; + } + + if($rec['hard'] > 1024) { + $rec['hard'] = round($rec['hard'] / 1024,2).' MB'; + } else { + $rec['hard'] .= ' KB'; + } + + + + /* if(!strstr($rec['used'],'M') && !strstr($rec['used'],'K')) $rec['used'].= ' B'; if(!strstr($rec['soft'],'M') && !strstr($rec['soft'],'K')) $rec['soft'].= ' B'; if(!strstr($rec['hard'],'M') && !strstr($rec['hard'],'K')) $rec['hard'].= ' B'; + */ - if($rec['soft'] == '0 B' || $rec['soft'] == '0K' || $rec['soft'] == '0') $rec['soft'] = $app->lng('unlimited'); - if($rec['hard'] == '0 B' || $rec['hard'] == '0K' || $rec['hard'] == '0') $rec['hard'] = $app->lng('unlimited'); + if($rec['soft'] == '0 B' || $rec['soft'] == '0 KB' || $rec['soft'] == '0') $rec['soft'] = $app->lng('unlimited'); + if($rec['hard'] == '0 B' || $rec['hard'] == '0 KB' || $rec['hard'] == '0') $rec['hard'] = $app->lng('unlimited'); //* The variable "id" contains always the index variable $rec['id'] = $rec[$this->idx_key]; diff --git a/server/mods-available/monitor_core_module.inc.php b/server/mods-available/monitor_core_module.inc.php index 7a3d2c7..b3c6f03 100644 --- a/server/mods-available/monitor_core_module.inc.php +++ b/server/mods-available/monitor_core_module.inc.php @@ -238,7 +238,7 @@ $state = 'ok'; /** Fetch the data for all users*/ - $dfData = shell_exec('repquota -asu'); + $dfData = shell_exec('repquota -au'); // split into array $df = explode("\n", $dfData); @@ -253,14 +253,22 @@ */ $s = preg_split ('/[\s]+/', $df[$i]); $username = $s[0]; - $data['user'][$username]['used'] = $s[2]; - $data['user'][$username]['soft'] = $s[3]; - $data['user'][$username]['hard'] = $s[4]; + if(substr($username,0,3) == 'web') { + if(isset($data['user'][$username])) { + $data['user'][$username]['used'] += $s[2]; + $data['user'][$username]['soft'] += $s[3]; + $data['user'][$username]['hard'] += $s[4]; + } else { + $data['user'][$username]['used'] = $s[2]; + $data['user'][$username]['soft'] = $s[3]; + $data['user'][$username]['hard'] = $s[4]; + } + } } } /** Fetch the data for all users*/ - $dfData = shell_exec('repquota -asg'); + $dfData = shell_exec('repquota -ag'); // split into array $df = explode("\n", $dfData); @@ -275,9 +283,17 @@ */ $s = preg_split ('/[\s]+/', $df[$i]); $groupname = $s[0]; - $data['group'][$groupname]['used'] = $s[1]; - $data['group'][$groupname]['soft'] = $s[2]; - $data['group'][$groupname]['hard'] = $s[3]; + if(substr($groupname,0,6) == 'client') { + if(isset($data['group'][$groupname])) { + $data['group'][$groupname]['used'] += $s[1]; + $data['group'][$groupname]['soft'] += $s[2]; + $data['group'][$groupname]['hard'] += $s[3]; + } else { + $data['group'][$groupname]['used'] = $s[1]; + $data['group'][$groupname]['soft'] = $s[2]; + $data['group'][$groupname]['hard'] = $s[3]; + } + } } } -- Gitblit v1.9.1