asArray(); $results = array(); $columns = array(); $labels = array_combine( array('', 'label', 'value', 'min', 'max', 'warn', 'crit'), array( '', $this->view->translate('Label'), $this->view->translate('Value'), $this->view->translate('Min'), $this->view->translate('Max'), $this->view->translate('Warning'), $this->view->translate('Critical') ) ); foreach ($pieChartData as $perfdata) { if ($perfdata->isVisualizable()) { $columns[''] = ''; } } foreach ($pieChartData as $perfdata) { foreach ($perfdata->toArray() as $column => $value) { if (! empty($value)) { $columns[$column] = $labels[$column]; } } } $table = array('' . implode('', $columns) . ''); foreach ($pieChartData as $perfdata) { if ($compact && $perfdata->isVisualizable()) { $results[] = $perfdata->asInlinePie($color)->render(); } else { $data = array(); if ($perfdata->isVisualizable()) { $data []= $perfdata->asInlinePie($color)->render() . ' '; } else if (isset($columns[''])) { $data []= ''; } if (! $compact) { foreach ($perfdata->toArray() as $column => $value) { if (! isset($columns[$column])) { continue; } $data []= empty($value) ? '-' : (string) $value; } } $table []= '' . implode('', $data) . ''; } } if ($limit > 0) { $count = max(count($table), count($results)); $table = array_slice($table, 0, $limit); $results = array_slice($results, 0, $limit); if ($count > $limit) { $mess = sprintf($this->view->translate('%d more ...'), $count - $limit); $results[] = '...'; } } if ($compact) { return join('', $results); } else { $pieCharts = empty($table) ? '' : '' . implode("\n", $table) . '
'; return $pieCharts; } } }