summaryrefslogtreecommitdiffstats
path: root/library/Reporting/Reports/SystemReport.php
diff options
context:
space:
mode:
Diffstat (limited to 'library/Reporting/Reports/SystemReport.php')
-rw-r--r--library/Reporting/Reports/SystemReport.php39
1 files changed, 39 insertions, 0 deletions
diff --git a/library/Reporting/Reports/SystemReport.php b/library/Reporting/Reports/SystemReport.php
new file mode 100644
index 0000000..8a3d8dd
--- /dev/null
+++ b/library/Reporting/Reports/SystemReport.php
@@ -0,0 +1,39 @@
+<?php
+// Icinga Reporting | (c) 2018 Icinga GmbH | GPLv2
+
+namespace Icinga\Module\Reporting\Reports;
+
+use Icinga\Module\Reporting\Hook\ReportHook;
+use Icinga\Module\Reporting\Timerange;
+use ipl\Html\HtmlString;
+
+class SystemReport extends ReportHook
+{
+ public function getName()
+ {
+ return 'System';
+ }
+
+ public function getHtml(Timerange $timerange, array $config = null)
+ {
+ ob_start();
+ phpinfo();
+ $html = ob_get_clean();
+
+ $doc = new \DOMDocument();
+ @$doc->loadHTML($html);
+
+ $style = $doc->getElementsByTagName('style')->item(0);
+ $style->parentNode->removeChild($style);
+
+ $title = $doc->getElementsByTagName('title')->item(0);
+ $title->parentNode->removeChild($title);
+
+ $meta = $doc->getElementsByTagName('meta')->item(0);
+ $meta->parentNode->removeChild($meta);
+
+ $doc->getElementsByTagName('div')->item(0)->setAttribute('class', 'system-report');
+
+ return new HtmlString($doc->saveHTML());
+ }
+}