Perfdata is not always a table

This commit is contained in:
Thomas Gelf 2014-03-08 19:39:28 +01:00
parent e2955c5af2
commit 6ebd3e7b0f

View File

@ -21,6 +21,7 @@ class Zend_View_Helper_Perfdata extends Zend_View_Helper_Abstract
$perfdata = preg_replace('~\'([^\']+)\'~e', "str_replace(' ', '\'', '$1')", $perfdata); $perfdata = preg_replace('~\'([^\']+)\'~e', "str_replace(' ', '\'', '$1')", $perfdata);
$parts = preg_split('~\s+~', $perfdata, -1, PREG_SPLIT_NO_EMPTY); $parts = preg_split('~\s+~', $perfdata, -1, PREG_SPLIT_NO_EMPTY);
$table = array();
$result = ''; $result = '';
if ($compact === true) { if ($compact === true) {
$compact = 5; $compact = 5;
@ -67,7 +68,7 @@ class Zend_View_Helper_Perfdata extends Zend_View_Helper_Abstract
. implode(',', array($green, $orange, $red, $gray)) . implode(',', array($green, $orange, $red, $gray))
. '</div>'; . '</div>';
} else { } else {
$result .= '<tr><th><div class="inlinepie" title="' . htmlspecialchars($name) . '" style="float: left; margin: 0.2em 0.5em 0.2em 0;">' $table[] = '<tr><th><div class="inlinepie" title="' . htmlspecialchars($name) . '" style="float: left; margin: 0.2em 0.5em 0.2em 0;">'
. implode(',', array($green, $orange, $red, $gray)) . implode(',', array($green, $orange, $red, $gray))
. '</div>' . '</div>'
. htmlspecialchars($name) . htmlspecialchars($name)
@ -80,8 +81,8 @@ class Zend_View_Helper_Perfdata extends Zend_View_Helper_Abstract
if ($result == '' && ! $compact) { if ($result == '' && ! $compact) {
$result = $perfdata; $result = $perfdata;
} }
if (! $compact && $result !== '') { if (! empty($table)) {
$result = '<table class="perfdata">' . $result . '</table>'; $result = '<table class="perfdata">' . implode("\n", $table) . '</table>' . $result;
} }
return $result; return $result;