Source of file Table.php
Size: 2,525 Bytes - Last Modified: 2015-05-15T11:18:15+02:00
/www-data/git/Hackathon_MageMonitoring/src/app/code/community/FireGento/MageMonitoring/Block/Widget/Multi/Renderer/Table.php
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 | <?php /** * This file is part of a FireGento e.V. module. * * This FireGento e.V. module is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License version 3 as * published by the Free Software Foundation. * * This script is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. * * PHP version 5 * * @category FireGento * @package FireGento_MageMonitoring * @author FireGento Team <team@firegento.com> * @copyright 2015 FireGento Team (http://www.firegento.com) * @license http://opensource.org/licenses/gpl-3.0 GNU General Public License, version 3 (GPLv3) */ /** * Block for rendering multi renderer table * * @category FireGento * @package FireGento_MageMonitoring * @author FireGento Team <team@firegento.com> */ class FireGento_MageMonitoring_Block_Widget_Multi_Renderer_Table extends FireGento_MageMonitoring_Block_Widget_Multi_Renderer_Abstract implements FireGento_MageMonitoring_Block_Widget_Multi_Renderer { const CONTENT_TYPE_TABLE = 'table'; /** * Constructor */ public function _construct() { $this->init(); } /** * Reset the table rows. */ public function init() { $this->setRows(array()); $this->setHeaderRow(array()); return $this; } /** * Retrieve the data for the block output. * * @return mixed */ public function _getContent() { $result = array(); foreach ($this->getRows() as $row) { $rowData = array_combine($this->getHeaderRow(), $row['values']); if (isset($row['config'])) { $rowData = array_merge($rowData, $row['config']); } $result[] = $rowData; } return $result; } /** * Add new row to table. * * @param array $row Data row * @param array $rowConfig Row configuration * @return $this */ public function addRow($row, $rowConfig = array()) { $rows = $this->getRows(); // collect data for new row and combine with config $rowData = array('values' => $row); if (count($rowConfig)) { $rowData['config'] = $rowConfig; } $rows[] = $rowData; $this->setRows($rows); return $this; } } |