\Dewdrop\Fields\HelperInputFilter

This helper can provide Zend\InputFilter\Inputs for a supplied field.

In the case of DB objects, the Input automatically generated for the field, using validators and filters appropriate for its data type and constraints, will be used. For custom fields, you just need to return a \Zend\InputFilter\Input object for your field. This is most commonly used along with \Dewdrop\Fields\RowEditor. If you are adding a custom field and make it editable, you'll almost always need to provide a callback for this helper so that it knows how to validate and filter that custom field.

Summary

Methods
Properties
Constants
matchesName()
assign()
getFieldAssignment()
hasValidName()
detectCallableForField()
__construct()
getInputFilter()
addInput()
No public properties found
No constants found
wrapCallable()
$name
N/A
No private methods found
$assignments
N/A

Properties

$name

$name : string

The name for this helper, used when you want to define a global custom callback for a given field

Type

string

$assignments

$assignments : array

Any per-instance callback assignments for this helper. This array will have field IDs as the keys and callables as the values.

Type

array

Methods

matchesName()

matchesName(string  $name) : boolean

Check to see if the supplied input matches this helper's name (case-insensitive).

Parameters

string $name

Returns

boolean

assign()

assign(mixed  $assignments, callable  $callable = null) : \Dewdrop\Fields\Helper\HelperAbstract

Assign one more custom per-instance callbacks for this helper. If the $arguments param is an array, this method expects that the keys will be field IDs and the values will be callables, assigning custom callbacks for multiple fields in one call. If, however, $assignments is a string or a FieldInterface object, a single custom callback assignment will be made.

Parameters

mixed $assignments
callable $callable

Returns

\Dewdrop\Fields\Helper\HelperAbstract

getFieldAssignment()

getFieldAssignment(\Dewdrop\Fields\FieldInterface  $field) : callable

Get the callback that will be used for the given FieldInterface object.

Parameters

\Dewdrop\Fields\FieldInterface $field

Throws

\Dewdrop\Fields\Exception\HelperCallableNotAvailableForField

Returns

callable

hasValidName()

hasValidName() : boolean

Ensure the helper has a valid $name value. If not, throw an exception.

All helpers must have a name defined so that global custom callbacks can be added to fields.

Throws

\Dewdrop\Fields\Exception\HelperMustHaveName

Returns

boolean

detectCallableForField()

detectCallableForField(\Dewdrop\Fields\FieldInterface  $field) : boolean|callable|mixed

For DB fields, we can automatically return an Input.

If no callback candidate is found, just return false from this method, which will be detected by getFieldAssignment(), causing execution to halt.

Parameters

\Dewdrop\Fields\FieldInterface $field

Returns

boolean|callable|mixed

__construct()

__construct(\Zend\InputFilter\InputFilter  $inputFilter = null) 

The \Zend\InputFilter\InputFilter onto which all the Input objects will be added.

Parameters

\Zend\InputFilter\InputFilter $inputFilter

getInputFilter()

getInputFilter() : \Zend\InputFilter\InputFilter

Get the \Zend\InputFilter\InputFilter object this helper is managing.

Returns

\Zend\InputFilter\InputFilter

addInput()

addInput(\Dewdrop\Fields\FieldInterface  $field) : $this

Add the \Zend\InputFilter\Input object for the given field.

Parameters

\Dewdrop\Fields\FieldInterface $field

Returns

$this

wrapCallable()

wrapCallable(callable  $callable, \Dewdrop\Fields\FieldInterface  $field = null) : callable

Wrap a field's callback to ensure that a reference to the helper is always supplied as the first argument to the callback.

Parameters

callable $callable
\Dewdrop\Fields\FieldInterface $field

Returns

callable