summaryrefslogtreecommitdiffstats
path: root/modules-available/statistics/inc/statistics.inc.php
diff options
context:
space:
mode:
authorSimon Rettberg2017-06-23 15:58:40 +0200
committerSimon Rettberg2017-06-23 15:58:40 +0200
commitc22a394095460c79c802ce91480242d38805eb95 (patch)
treed5221ff6dcb7553c9f438ba878b28c635e8866be /modules-available/statistics/inc/statistics.inc.php
parent[install.php] Add functions for getting and deleting constraints (diff)
downloadslx-admin-c22a394095460c79c802ce91480242d38805eb95.tar.gz
slx-admin-c22a394095460c79c802ce91480242d38805eb95.tar.xz
slx-admin-c22a394095460c79c802ce91480242d38805eb95.zip
[statistics] Helper for getting machine as object from DB (to be extended)
Diffstat (limited to 'modules-available/statistics/inc/statistics.inc.php')
-rw-r--r--modules-available/statistics/inc/statistics.inc.php40
1 files changed, 40 insertions, 0 deletions
diff --git a/modules-available/statistics/inc/statistics.inc.php b/modules-available/statistics/inc/statistics.inc.php
new file mode 100644
index 00000000..1c9ebf07
--- /dev/null
+++ b/modules-available/statistics/inc/statistics.inc.php
@@ -0,0 +1,40 @@
+<?php
+
+
+
+class Statistics
+{
+
+ private static $machineFields = false;
+
+ /**
+ * @param string $machineuuid
+ * @param int $returnData
+ * @return \Machine|false
+ */
+ public static function getMachine($machineuuid, $returnData)
+ {
+ if (self::$machineFields === false) {
+ $r = new ReflectionClass('Machine');
+ $props = $r->getProperties(ReflectionProperty::IS_PUBLIC);
+ self::$machineFields = array_flip(array_map(function($e) { return $e->getName(); }, $props));
+ }
+ if ($returnData === Machine::NO_DATA) {
+ unset(self::$machineFields['data']);
+ } elseif ($returnData === Machine::RAW_DATA) {
+ self::$machineFields['data'] = true;
+ } else {
+ Util::traceError('Invalid $returnData option passed');
+ }
+ $fields = implode(',', array_keys(self::$machineFields));
+ $row = Database::queryFirst("SELECT * FROM machine WHERE machineuuid = :machineuuid", compact('machineuuid'));
+ if ($row === false)
+ return false;
+ $m = new Machine();
+ foreach ($row as $key => $val) {
+ $m->{$key} = $val;
+ }
+ return $m;
+ }
+
+}