Class MultiCheckboxWidget
Input widget class for generating multiple checkboxes.
Properties summary
- $_idPrefix protected
string|nullPrefix for id attribute.
- $_idSuffixes protected
string[]A list of id suffixes used in the current rendering.
- $_label protected
\Cake\View\Widget\LabelWidgetLabel widget instance.
- $_templates protected
\Cake\View\StringTemplateTemplate instance to use.
Method Summary
- 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(mixed $templates, mixed $label)
Render multi-checkbox widget.
This class uses the following templates:
-
checkboxRenders checkbox input controls. Accepts thename,valueandattrsvariables. -
checkboxWrapperRenders the containing div/element for a checkbox and its label. Accepts theinput, andlabelvariables. -
multicheckboxWrapperRenders a wrapper around grouped inputs. -
multicheckboxTitleRenders the title element for grouped inputs.
Parameters
-
\Cake\View\StringTemplate$templates Templates list.
-
\Cake\View\Widget\LabelWidget$label Label widget instance.
_clearIds() protected
_clearIds()
Clear the stored ID suffixes.
_domId() protected
_domId(mixed $value)
Generate an ID suitable for use in an ID attribute.
Parameters
-
string$value The value to convert into an ID.
Returns
stringThe generated id.
_id() protected
_id(mixed $name, mixed $val)
Generate an ID attribute for an element.
Ensures that id's for a given set of fields are unique.
Parameters
-
string$name The ID attribute name.
-
string$val The ID attribute value.
Returns
stringGenerated id.
_idSuffix() protected
_idSuffix(mixed $val)
Generate an ID suffix.
Ensures that id's for a given set of fields are unique.
Parameters
-
string$val The ID attribute value.
Returns
stringGenerated id suffix.
_isDisabled() protected
_isDisabled(mixed $key, mixed $disabled)
Helper method for deciding what options are disabled.
Parameters
-
string$key The key to test.
-
array|bool|null$disabled The disabled values.
Returns
bool_isSelected() protected
_isSelected(mixed $key, mixed $selected)
Helper method for deciding what options are selected.
Parameters
-
string$key The key to test.
-
array|string|null$selected The selected values.
Returns
bool_renderInput() protected
_renderInput(mixed $checkbox, mixed $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
string_renderInputs() protected
_renderInputs(mixed $data, mixed $context)
Render the checkbox inputs.
Parameters
-
array$data The data array defining the checkboxes.
-
\Cake\View\Form\ContextInterface$context The current form context.
Returns
arrayAn array of rendered inputs.
render() public
render(array $data, \Cake\View\Form\ContextInterface $context)
Render multi-checkbox widget.
Data supports the following options.
-
nameThe name attribute of the inputs to create.[]will be appended to the name. -
optionsAn array of options to create checkboxes out of. -
valEither a string/integer or array of values that should be checked. Can also be a complex options set. -
disabledEither a boolean or an array of checkboxes to disable. -
escapeSet to false to disable HTML escaping. -
optionsAn associative array of value=>labels to generate options for. -
idPrefixPrefix 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
stringsecureFields() 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
string[]Array of fields to secure.
Property Detail
$_idPrefix protected
Prefix for id attribute.
Type
string|null$_idSuffixes protected
A list of id suffixes used in the current rendering.
Type
string[]$_label protected
Label widget instance.
Type
\Cake\View\Widget\LabelWidget$_templates protected
Template instance to use.
Type
\Cake\View\StringTemplate
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.9/class-Cake.View.Widget.MultiCheckboxWidget.html