%PDF- %PDF-
Direktori : /home/vacivi36/intranet.vacivitta.com.br/protected/humhub/components/export/ |
Current File : /home/vacivi36/intranet.vacivitta.com.br/protected/humhub/components/export/Column.php |
<?php /** * @link https://www.humhub.org/ * @copyright Copyright (c) 2018 HumHub GmbH & Co. KG * @license https://www.humhub.com/licences */ namespace humhub\components\export; use yii\base\BaseObject; /** * Column is the base class of all [[SpreadsheetExport]] column classes. * * This class was originally developed by Paul Klimov <klimov.paul@gmail.com> and his * project csv-grid (https://github.com/yii2tech/csv-grid). */ class Column extends BaseObject { /** * @var SpreadsheetExport the grid view object that owns this column. */ public $grid; /** * @var string the header cell content. Note that it will not be HTML-encoded. */ public $header; /** * @var string the footer cell content. Note that it will not be HTML-encoded. */ public $footer; /** * @var callable This is a callable that will be used to generate the content of each cell. * The signature of the function should be the following: `function ($model, $key, $index, $column)`. * Where `$model`, `$key`, and `$index` refer to the model, key and index of the row currently being rendered * and `$column` is a reference to the [[Column]] object. */ public $content; /** * @var bool whether this column is visible. Defaults to true. */ public $visible = true; /** * @var string|null specify data type * @see https://phpspreadsheet.readthedocs.io/en/develop/topics/accessing-cells/#excel-datatypes */ public $dataType = null; /** * @var array containing style information * @see https://phpspreadsheet.readthedocs.io/en/develop/topics/recipes/#styles */ public $styles = []; /** * Renders the header cell content. * The default implementation simply renders [[header]]. * This method may be overridden to customize the rendering of the header cell. * @return string the rendering result */ public function renderHeaderCellContent() { return trim($this->header) !== '' ? $this->header : $this->grid->emptyCell; } /** * Renders the footer cell content. * The default implementation simply renders [[footer]]. * This method may be overridden to customize the rendering of the footer cell. * @return string the rendering result */ public function renderFooterCellContent() { return trim($this->footer) !== '' ? $this->footer : $this->grid->emptyCell; } /** * Renders the data cell content. * @param mixed $model the data model * @param mixed $key the key associated with the data model * @param int $index zero-based index of data model among models array returned by [[GridView::dataProvider]]. * @return string the rendering result */ public function renderDataCellContent($model, $key, $index) { if ($this->content !== null) { return call_user_func($this->content, $model, $key, $index, $this); } else { return $this->grid->emptyCell; } } }