silverstripe-framework/src/Forms/GridField/GridFieldConfig_Base.php
2018-09-04 11:35:17 +12:00

33 lines
1.0 KiB
PHP

<?php
namespace SilverStripe\Forms\GridField;
/**
* A simple readonly, paginated view of records, with sortable and searchable
* headers.
*/
class GridFieldConfig_Base extends GridFieldConfig
{
/**
* @param int $itemsPerPage - How many items per page should show up
*/
public function __construct($itemsPerPage = null)
{
parent::__construct();
$this->addComponent(new GridFieldToolbarHeader());
$this->addComponent(new GridFieldButtonRow('before'));
$this->addComponent($sort = new GridFieldSortableHeader());
$this->addComponent($filter = new GridFieldFilterHeader());
$this->addComponent(new GridFieldDataColumns());
$this->addComponent(new GridFieldPageCount('toolbar-header-right'));
$this->addComponent($pagination = new GridFieldPaginator($itemsPerPage));
$sort->setThrowExceptionOnBadDataType(false);
$filter->setThrowExceptionOnBadDataType(false);
$pagination->setThrowExceptionOnBadDataType(false);
$this->extend('updateConfig');
}
}