GridFieldFilterHeader
class GridFieldFilterHeader extends AbstractGridFieldComponent implements GridField_URLHandler, GridField_HTMLProvider, GridField_DataManipulator, GridField_ActionProvider, GridField_StateProvider (View source)
GridFieldFilterHeader alters the GridField with some filtering fields in the header of each column.
Traits
A class that can be instantiated or replaced via DI
Properties
protected deprecated | bool | $throwExceptionOnBadDataType | See setThrowExceptionOnBadDataType() |
|
protected | SearchContext | $searchContext | ||
protected | Form | $searchForm | ||
protected | string|null | $searchField | The name of the default search field |
Methods
An implementation of the factory method, allows you to create an instance of a class
Creates a class instance by the "singleton" design pattern.
Determine what happens when this component is used with a list that isn't SS_Filterable.
If the GridField has a filterable datalist, return an array of actions
If the GridField has a filterable datalist, return an array of actions
Returns whether this GridField has any columns to filter on at all
Generate a search context based on the model class of the of the GridField
Sets a specific SearchContext instance for this component to use, instead of the default context provided by the ModelClass.
Either returns the legacy filter header or the search button and field
Details
static Injectable
create(mixed ...$args)
An implementation of the factory method, allows you to create an instance of a class
This method will defer class substitution to the Injector API, which can be customised via the Config API to declare substitution classes.
This can be called in one of two ways - either calling via the class directly, or calling on Object and passing the class name as the first parameter. The following are equivalent: $list = DataList::create(SiteTree::class); $list = SiteTree::get();
static Injectable
singleton(string $class = null)
Creates a class instance by the "singleton" design pattern.
It will always return the same instance for this class, which can be used for performance reasons and as a simple way to access instance methods which don't rely on instance data (e.g. the custom SilverStripe static handling).
array
getURLHandlers(GridField $gridField)
No description
setThrowExceptionOnBadDataType(bool $throwExceptionOnBadDataType)
deprecated
deprecated
Determine what happens when this component is used with a list that isn't SS_Filterable.
- true: An exception is thrown
- false: This component will be ignored - it won't make any changes to the GridField.
By default, this is set to true so that it's clearer what's happening, but the predefined GridFieldConfig subclasses set this to false for flexibility.
getThrowExceptionOnBadDataType()
deprecated
deprecated
See setThrowExceptionOnBadDataType()
string|null
getSearchField()
No description
GridFieldFilterHeader
setSearchField(string $field)
No description
protected bool
checkDataType(SS_List $dataList)
Check that this dataList is of the right data type.
Returns false if it's a bad data type, and if appropriate, throws an exception.
array
getActions(GridField $gridField)
If the GridField has a filterable datalist, return an array of actions
handleAction(GridField $gridField, string $actionName, array $arguments, array $data)
If the GridField has a filterable datalist, return an array of actions
void
initDefaultState(GridState_Data $data)
Initialise the default state in the given GridState_Data
We recommend that you call $data->initDefaults() to do this.
bool
canFilterAnyColumns(GridField $gridField)
Returns whether this GridField has any columns to filter on at all
SearchContext
getSearchContext(GridField $gridField)
Generate a search context based on the model class of the of the GridField
GridFieldFilterHeader
setSearchContext(SearchContext $context)
Sets a specific SearchContext instance for this component to use, instead of the default context provided by the ModelClass.
string
getSearchFieldSchema(GridField $gridField)
Returns the search field schema for the component
HTTPResponse
getSearchFormSchema(GridField $gridField)
Returns the search form schema for the component
array
getHTMLFragments(GridField $gridField)
Either returns the legacy filter header or the search button and field