/** * @param GridField $grid * @param string $value json encoded string */ public function __construct($grid, $value = null) { $this->grid = $grid; if ($value) { $this->setValue($value); } parent::__construct($grid->getName() . '[GridState]'); }
public function handleAction(GridField $gridField, $actionName, $arguments, $data) { if (!$this->checkDataType($gridField->getList())) { return; } $state = $gridField->State->GridFieldFilterHeader; if ($actionName === 'filter') { if (isset($data['filter'][$gridField->getName()])) { foreach ($data['filter'][$gridField->getName()] as $key => $filter) { $state->Columns->{$key} = $filter; } } } elseif ($actionName === 'reset') { $state->Columns = null; } }