class GridFieldDetailForm implements GridField_URLHandler (View source)

Provides view and edit forms at GridField-specific URLs.

These can be placed into pop-ups by an appropriate front-end.

Usually added to a GridField alongside of a GridFieldEditButton which takes care of linking the individual rows to their edit view.

The URLs provided will be off the following form:

  • /field//item/
  • /field//item//edit

Properties

protected string $template
protected string $name
protected Validator $validator
protected FieldList $fields
protected string $itemRequestClass
protected function $itemEditFormCallback

Methods

public
getURLHandlers($gridField)

Return URLs to be handled by this grid field, in an array the same form as $url_handlers.

public
__construct(string $name = 'DetailForm')

Create a popup component. The two arguments will specify how the popup form's HTML and behaviour is created. The given controller will be customised, putting the edit form into the template with the given name.

public
handleItem(GridField $gridField, SS_HTTPRequest $request)

No description

public
setTemplate($template)

No description

public
string
getTemplate()

No description

public
setName($name)

No description

public
string
getName()

No description

public
setValidator(Validator $validator)

No description

public
getValidator()

No description

public
setFields(FieldList $fields)

No description

public
getFields()

No description

public
setItemRequestClass($class)

No description

public
string
getItemRequestClass()

No description

public
setItemEditFormCallback(Closure $cb)

No description

public
getItemEditFormCallback()

No description

Details

getURLHandlers($gridField)

Return URLs to be handled by this grid field, in an array the same form as $url_handlers.

Handler methods will be called on the component, rather than the GridField.

Parameters

$gridField

__construct(string $name = 'DetailForm')

Create a popup component. The two arguments will specify how the popup form's HTML and behaviour is created. The given controller will be customised, putting the edit form into the template with the given name.

The arguments are experimental API's to support partial content to be passed back to whatever controller who wants to display the getCMSFields

Parameters

string $name

The name of the edit form to place into the pop-up form

GridFieldDetailForm_ItemRequest handleItem(GridField $gridField, SS_HTTPRequest $request)

No description

Parameters

GridField $gridField
SS_HTTPRequest $request

Return Value

GridFieldDetailForm_ItemRequest

setTemplate($template)

No description

Parameters

$template

string getTemplate()

No description

Return Value

string

setName($name)

No description

Parameters

$name

string getName()

No description

Return Value

string

setValidator(Validator $validator)

No description

Parameters

Validator $validator

Validator getValidator()

No description

Return Value

Validator

setFields(FieldList $fields)

No description

Parameters

FieldList $fields

FieldList getFields()

No description

Return Value

FieldList

setItemRequestClass($class)

No description

Parameters

$class

string getItemRequestClass()

No description

Return Value

string

setItemEditFormCallback(Closure $cb)

No description

Parameters

Closure $cb

Make changes on the edit form after constructing it.

Closure getItemEditFormCallback()

No description

Return Value

Closure