From a30f98a937650c5001418a6fb2e21e403566dbcb Mon Sep 17 00:00:00 2001 From: hickert Date: Thu, 5 Aug 2010 09:06:25 +0000 Subject: [PATCH] Added deperate statisitics plugin git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@19365 594d385d-05f5-0310-b6e9-bd551577e9d8 --- gosa-core/contrib/gosa.conf | 1 + .../generic/statistics/class_statistics.inc | 59 +++++++++++++++++++ .../plugins/generic/statistics/statistics.tpl | 19 ++++++ 3 files changed, 79 insertions(+) diff --git a/gosa-core/contrib/gosa.conf b/gosa-core/contrib/gosa.conf index 7adf02005..dd6838595 100644 --- a/gosa-core/contrib/gosa.conf +++ b/gosa-core/contrib/gosa.conf @@ -74,6 +74,7 @@ + diff --git a/gosa-core/plugins/generic/statistics/class_statistics.inc b/gosa-core/plugins/generic/statistics/class_statistics.inc index f6faff637..f925ea45d 100644 --- a/gosa-core/plugins/generic/statistics/class_statistics.inc +++ b/gosa-core/plugins/generic/statistics/class_statistics.inc @@ -6,6 +6,9 @@ class statistics extends plugin var $plDescription = 'GOsa usage statistics'; var $plShortIcon = 'statistics.png'; var $plIcon = 'plugin.png'; + + var $receivedStats = array(); + function __construct($config) { @@ -15,7 +18,63 @@ class statistics extends plugin function execute() { + + + if(isset($_POST['transmitStatistics'])){ + + // First try to retrieve values via RPC + if ($this->config->get_cfg_value("core","gosaRpcServer") != ""){ + $tmp = stats::dumpTables(); + $dump = array(); + foreach($tmp as $entry){ + $dump[] = array_values($entry); + } + + $rpc = $this->config->getRpcHandle( + "http://10.3.64.59:4000", + "65717fe6-9e3e-11df-b010-5452005f1250", + "WyukwauWoid2", + TRUE); + $rpc->updateInstanceStatus($dump); + if(!$rpc->success()){ + msg_dialog::display(_("Error"),msgPool::rpcError($rpc->get_error()),ERROR_DIALOG); + } + } + } + + // Transmit daily statistics to GOsa-Server + if(isset($_POST['receiveStatistics'])){ + + // First try to retrieve values via RPC + if ($this->config->get_cfg_value("core","gosaRpcServer") != ""){ + $rpc = $this->config->getRpcHandle( + "http://10.3.64.59:4000", + "65717fe6-9e3e-11df-b010-5452005f1250", + "WyukwauWoid2", + TRUE); + $res = $rpc->getInstanceStats(); + if(!$rpc->success()){ + msg_dialog::display(_("Error"),msgPool::rpcError($rpc->get_error()),ERROR_DIALOG); + } + + $all = array_sum($res['category_count']); + $tmp = array(); + $tmpRendered = array(); + foreach($res['category_count'] as $category => $count){ + $tmp[$category] = floor(($count / $all) * 10000) / 100; + $tmpRendered[$category] = progressbar($tmp[$category]); + } + $this->receivedStats = $tmpRendered; + } + } + + + + $smarty = get_smarty(); + $smarty->assign("receivedStats",$this->receivedStats); + + return($smarty->fetch(get_template_path('statistics.tpl', TRUE))); } diff --git a/gosa-core/plugins/generic/statistics/statistics.tpl b/gosa-core/plugins/generic/statistics/statistics.tpl index e69de29bb..7d1028293 100644 --- a/gosa-core/plugins/generic/statistics/statistics.tpl +++ b/gosa-core/plugins/generic/statistics/statistics.tpl @@ -0,0 +1,19 @@ +

{t}Transmit daliy stats{/t} + + + + +{if $receivedStats} +

{t}Transmit daliy stats{/t}

+ + {foreach from=$receivedStats key=key item=item} + + + + + {/foreach} +
{$key}{$item}
+{/if} + +
+ -- 2.30.2