Class MultiCheckboxWidget
Input widget class for generating multiple checkboxes.
- Cake\View\Widget\MultiCheckboxWidget implements Cake\View\Widget\WidgetInterface uses Cake\View\Helper\IdGeneratorTrait
Properties summary
-
$_label
protectedLabel widget instance. -
$_templates
protectedTemplate instance to use.
Inherited Properties
Method Summary
-
__construct() public
Render multi-checkbox widget. -
_isDisabled() protected
Helper method for deciding what options are disabled. -
_isSelected() protected
Helper method for deciding what options are selected. -
_renderInput() protected
Render a single checkbox & wrapper. -
_renderInputs() protected
Render the checkbox inputs. -
render() public
Render multi-checkbox widget. -
secureFields() public
Returns a list of fields that need to be secured for this widget. Fields are in the form of Model[field][suffix]
Method Detail
__construct() public ¶
__construct( Cake\View\StringTemplate
$templates , Cake\View\Widget\LabelWidget
$label )
Render multi-checkbox widget.
This class uses the following templates:
checkbox
Renders checkbox input controls. Accepts thename
,value
andattrs
variables.checkboxWrapper
Renders the containing div/element for a checkbox and its label. Accepts theinput
, andlabel
variables.multicheckboxWrapper
Renders a wrapper around grouped inputs.multicheckboxTitle
Renders the title element for grouped inputs.
Parameters
-
Cake\View\StringTemplate
$templates - Templates list.
-
Cake\View\Widget\LabelWidget
$label - Label widget instance.
_isDisabled() protected ¶
_isDisabled( string $key , array|boolean|null $disabled )
Helper method for deciding what options are disabled.
Parameters
- string $key
- The key to test.
- array|boolean|null $disabled
- The disabled values.
Returns
_isSelected() protected ¶
_isSelected( string $key , array|string|null $selected )
Helper method for deciding what options are selected.
Parameters
- string $key
- The key to test.
- array|string|null $selected
- The selected values.
Returns
_renderInput() protected ¶
_renderInput( array $checkbox , Cake\View\Form\ContextInterface
$context )
Render a single checkbox & wrapper.
Parameters
- array $checkbox
- An array containing checkbox key/value option pairs
-
Cake\View\Form\ContextInterface
$context - Context object.
Returns
_renderInputs() protected ¶
_renderInputs( array $data , Cake\View\Form\ContextInterface
$context )
Render the checkbox inputs.
Parameters
- array $data
- The data array defining the checkboxes.
-
Cake\View\Form\ContextInterface
$context - The current form context.
Returns
An array of rendered inputs.
render() public ¶
render( array $data , Cake\View\Form\ContextInterface
$context )
Render multi-checkbox widget.
Data supports the following options.
name
The name attribute of the inputs to create.[]
will be appended to the name.options
An array of options to create checkboxes out of.val
Either a string/integer or array of values that should be checked. Can also be a complex options set.disabled
Either a boolean or an array of checkboxes to disable.escape
Set to false to disable HTML escaping.options
An associative array of value=>labels to generate options for.idPrefix
Prefix for generated ID attributes.
Options format
The options option can take a variety of data format depending on the complexity of HTML you want generated.
You can generate simple options using a basic associative array:
'options' => ['elk' => 'Elk', 'beaver' => 'Beaver']
If you need to define additional attributes on your option elements you can use the complex form for options:
'options' => [ ['value' => 'elk', 'text' => 'Elk', 'data-foo' => 'bar'], ]
This form requires that both the value
and text
keys be defined.
If either is not set options will not be generated correctly.
Parameters
- array $data
- The data to generate a checkbox set with.
-
Cake\View\Form\ContextInterface
$context - The current form context.
Returns
Implementation of
secureFields() public ¶
secureFields( array $data )
Returns a list of fields that need to be secured for this widget. Fields are in the form of Model[field][suffix]
Parameters
- array $data
- The data to render.
Returns
Array of fields to secure.