From d22277878254cf33fd63ca1bf12b215f4e030a27 Mon Sep 17 00:00:00 2001
From: Marius Burkard <m.burkard@pixcept.de>
Date: Mon, 04 Jan 2016 05:12:49 -0500
Subject: [PATCH] - merged different fixes and updates from foreign branches
---
interface/web/sites/database_quota_stats.php | 67 ++++++++++++++++++++-------------
1 files changed, 41 insertions(+), 26 deletions(-)
diff --git a/interface/web/sites/database_quota_stats.php b/interface/web/sites/database_quota_stats.php
index 7815faa..54fd4fe 100644
--- a/interface/web/sites/database_quota_stats.php
+++ b/interface/web/sites/database_quota_stats.php
@@ -19,21 +19,26 @@
$app->load('listform_actions');
-$tmp_rec = $app->db->queryOneRecord("SELECT data from monitor_data WHERE type = 'database_size' ORDER BY created DESC");
+$tmp_rec = $app->db->queryAllRecords("SELECT server_id, data from monitor_data WHERE type = 'database_size' ORDER BY created DESC");
$monitor_data = array();
-$tmp_array = unserialize($tmp_rec['data']);
+if(is_array($tmp_rec)) {
+ for($i = 0; $i < count($tmp_rec); $i++) {
+ $tmp_array = unserialize($tmp_rec[$i]['data']);
+ $server_id = $tmp_rec[$i]['server_id'];
-foreach($tmp_array as $database_name => $data) {
- $db_name = $data['database_name'];
+ foreach($tmp_array as $database_name => $data) {
+ $db_name = $data['database_name'];
- $temp = $app->db->queryOneRecord("SELECT client.username, web_database.database_quota FROM web_database, sys_group, client WHERE web_database.sys_groupid = sys_group.groupid AND sys_group.client_id = client.client_id AND web_database.database_name = ?", $db_name);
-
- $monitor_data[$db_name]['database_name'] = $data['database_name'];
- $monitor_data[$db_name]['client'] = isset($temp['username']) ? $temp['username'] : '';
- $monitor_data[$db_name]['used'] = isset($data['size']) ? $data['size'] : 0;
- $monitor_data[$db_name]['quota'] = isset($temp['database_quota']) ? $temp['database_quota'] : 0;
-
- unset($temp);
+ $temp = $app->db->queryOneRecord("SELECT client.username, web_database.database_quota FROM web_database, sys_group, client WHERE web_database.sys_groupid = sys_group.groupid AND sys_group.client_id = client.client_id AND web_database.database_name = ?", $db_name);
+ if(is_array($temp) && !empty($temp)) {
+ $monitor_data[$server_id.'.'.$db_name]['database_name'] = $data['database_name'];
+ $monitor_data[$server_id.'.'.$db_name]['client'] = isset($temp['username']) ? $temp['username'] : '';
+ $monitor_data[$server_id.'.'.$db_name]['used'] = isset($data['size']) ? $data['size'] : 0;
+ $monitor_data[$server_id.'.'.$db_name]['quota'] = isset($temp['database_quota']) ? $temp['database_quota'] : 0;
+ }
+ unset($temp);
+ }
+ }
}
class list_action extends listform_actions {
@@ -48,26 +53,36 @@
$rec['bgcolor'] = $this->DataRowColor;
$database_name = $rec['database_name'];
+
+ if(!empty($monitor_data[$rec['server_id'].'.'.$database_name])){
+ $rec['database'] = $monitor_data[$rec['server_id'].'.'.$database_name]['database_name'];
+ $rec['client'] = $monitor_data[$rec['server_id'].'.'.$database_name]['client'];
+ $rec['server_name'] = $app->db->queryOneRecord("SELECT server_name FROM server WHERE server_id = ?", $rec['server_id'])['server_name'];
+ $rec['used'] = $monitor_data[$rec['server_id'].'.'.$database_name]['used'];
+ $rec['quota'] = $monitor_data[$rec['server_id'].'.'.$database_name]['quota'];
- $rec['database'] = $monitor_data[$database_name]['database_name'];
- $rec['client'] = $monitor_data[$database_name]['client'];
- $rec['server_name'] = $app->db->queryOneRecord("SELECT server_name FROM server WHERE server_id = ?", $rec['server_id'])['server_name'];
- $rec['used'] = $monitor_data[$database_name]['used'];
- $rec['quota'] = $monitor_data[$database_name]['quota'];
+ if($rec['quota'] == 0){
+ $rec['quota'] = $app->lng('unlimited');
+ $rec['percentage'] = '';
+ } else {
+ if ($rec['used'] > 0 ) $rec['percentage'] = round(100 * intval($rec['used']) / ( intval($rec['quota'])*1024*1024) ).'%';
+ $rec['quota'] .= ' MB';
+ }
- if($rec['quota'] == 0){
- $rec['quota'] = $app->lng('unlimited');
- $rec['percentage'] = '';
+ if ($rec['used'] > 0) $rec['used'] = $app->functions->formatBytes($rec['used']);
} else {
- if ($rec['used'] > 0 ) $rec['percentage'] = round(100 * intval($rec['used']) / ( intval($rec['quota'])*1024*1024) ).'%';
- $rec['quota'] .= ' MB';
+ $web_database = $app->db->queryOneRecord("SELECT * FROM web_database WHERE database_id = ".$rec[$this->idx_key]);
+ $rec['database'] = $rec['database_name'];
+ $rec['server_name'] = $app->db->queryOneRecord("SELECT server_name FROM server WHERE server_id = ?", $web_database['server_id'])['server_name'];
+ $sys_group = $app->db->queryOneRecord("SELECT * FROM sys_group WHERE groupid = ".$web_database['sys_groupid']);
+ $client = $app->db->queryOneRecord("SELECT * FROM client WHERE client_id = ".$sys_group['client_id']);
+ $rec['client'] = $client['username'];
+ $rec['used'] = 'n/a';
+ $rec['quota'] = 'n/a';
}
-
- if ($rec['used'] > 0) $rec['used'] = $app->functions->formatBytes($rec['used']);
-
$rec['id'] = $rec[$this->idx_key];
- return $rec;
+ return $rec;
}
}
--
Gitblit v1.9.1