/** * Creates filter objects. */ protected function createFilters() { $filters = []; foreach ($this->grid->getConfig()->getColumns() as $column) { if ($column->hasFilters()) { foreach ($column->getFilters() as $filterConfig) { $filters[$filterConfig->getId()] = new Filter($filterConfig, $column, $this->grid); } } } $this->filters = Collection::make($filters); }
protected function renderBody() { while ($row = $this->grid->getConfig()->getDataProvider()->getRow()) { foreach ($this->grid->getConfig()->getColumns() as $column) { if (!$column->isHidden()) { $this->output .= $this->escapeString($column->getValue($row)) . static::CSV_DELIMITER; } } $this->output .= PHP_EOL; } }
/** * Returns input key for grid parameters. * * @return string */ public function getKey() { return $this->grid->getConfig()->getName(); }
/** * Creates children components for rendering column headers. * * @param Grid $grid */ protected function createHeaders(Grid $grid) { foreach ($grid->getConfig()->getColumns() as $column) { $this->addComponent(new ColumnHeader($column)); } }