Class RadioWidget
Input widget class for generating a set of radio buttons.
This class is intended as an internal implementation detail of Cake\View\Helper\FormHelper and is not intended for direct use.
- Cake\View\Widget\RadioWidget implements Cake\View\Widget\WidgetInterface uses Cake\View\Helper\IdGeneratorTrait
Method Detail
__constructsource public
__construct( Cake\View\StringTemplate $templates , Cake\View\Widget\LabelWidget $label )
Constructor
This class uses a few templates:
-
radio
Used to generate the input for a radio button. Can use the following variablesname
,value
,attrs
. -
radioWrapper
Used to generate the container element for the radio + input element. Can use theinput
andlabel
variables.
Parameters
-
Cake\View\StringTemplate
$templates
- Templates list.
-
Cake\View\Widget\LabelWidget
$label
- Label widget instance.
_isDisabledsource protected
_isDisabled( array $radio , array|null|true $disabled )
Disabled attribute detection.
Parameters
- array
$radio
- Radio info.
- array|null|true
$disabled
- The disabled values.
Returns
boolean
bool
_renderInputsource protected
_renderInput( string|integer $val , string|array $text , array $data , Cake\View\Form\ContextInterface $context )
Renders a single radio input and label.
Parameters
- string|integer
$val
- The value of the radio input.
- string|array
$text
- The label text, or complex radio type.
- array
$data
- Additional options for input generation.
-
Cake\View\Form\ContextInterface
$context
- The form context
Returns
string
string
_renderLabelsource protected
_renderLabel( array $radio , false|string|array $label , string $input , Cake\View\Form\ContextInterface $context , boolean $escape )
Renders a label element for a given radio button.
In the future this might be refactored into a separate widget as other input types (multi-checkboxes) will also need labels generated.
Parameters
- array
$radio
- The input properties.
- false|string|array
$label
- The properties for a label.
- string
$input
- The input widget.
-
Cake\View\Form\ContextInterface
$context
- The form context.
- boolean
$escape
- Whether or not to HTML escape the label.
Returns
string
Generated label.
rendersource public
render( array $data , Cake\View\Form\ContextInterface $context )
Render a set of radio buttons.
Data supports the following keys:
-
name
- Set the input name. -
options
- An array of options. See below for more information. -
disabled
- Either true or an array of inputs to disable. When true, the select element will be disabled. -
val
- A string of the option to mark as selected. -
label
- Either false to disable label generation, or an array of attributes for all labels. -
required
- Set to true to add the required attribute on all generated radios. -
idPrefix
Prefix for generated ID attributes.
Parameters
- array
$data
- The data to build radio buttons 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
_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
Properties used from Cake\View\Helper\IdGeneratorTrait
© 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.RadioWidget.html