Class MultiCheckboxWidget

Input widget class for generating multiple checkboxes.

Cake\View\Widget\MultiCheckboxWidget implements Cake\View\Widget\WidgetInterface uses Cake\View\Helper\IdGeneratorTrait

Method Detail

__constructsource 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 the name, value and attrs variables.
  • checkboxWrapper Renders the containing div/element for a checkbox and its label. Accepts the input, and label variables.

Parameters

Cake\View\StringTemplate $templates
Templates list.
Cake\View\Widget\LabelWidget $label
Label widget instance.

_isDisabledsource protected

_isDisabled( string $key , array|null $disabled )

Helper method for deciding what options are disabled.

Parameters

string $key
The key to test.
array|null $disabled
The disabled values.

Returns

boolean
bool

_isSelectedsource 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

boolean
bool

_renderInputsource 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

string
string

rendersource 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

string
string

Implementation of

Cake\View\Widget\WidgetInterface::render()

secureFieldssource 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
Array of fields to secure.

Implementation of

Cake\View\Widget\WidgetInterface::secureFields()

Methods used from Cake\View\Helper\IdGeneratorTrait

_clearIdssource protected

_clearIds( )

Clear the stored ID suffixes.

_domIdsource protected

_domId( string $value )

Generate an ID suitable for use in an ID attribute.

Parameters

string $value
The value to convert into an ID.

Returns

string
The generated id.

_idsource protected

_id( string $name , string $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

string
Generated id.

Properties summary

$_labelsource

protected Cake\View\Widget\LabelWidget

Label widget instance.

$_templatessource

protected Cake\View\StringTemplate

Template instance to use.

Properties used from Cake\View\Helper\IdGeneratorTrait

$_idPrefixsource

protected string

Prefix for id attribute.

null

$_idSuffixessource

protected array

A list of id suffixes used in the current rendering.

[]

© 2005–2016 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.
http://api.cakephp.org/3.1/class-Cake.View.Widget.MultiCheckboxWidget.html