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

Properties summary

Inherited Properties

Method Summary

  • __construct() public
    Constructor
  • _isDisabled() protected
    Disabled attribute detection.
  • _renderInput() protected
    Renders a single radio input and label.
  • _renderLabel() protected
    Renders a label element for a given radio button.
  • render() public
    Render a set of radio buttons.
  • 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()source 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 variables name, value, attrs.
  • radioWrapper Used to generate the container element for the radio + input element. Can use the input and label variables.

Parameters

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

_isDisabled()source 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

_renderInput()source 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

_renderLabel()source 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|boolean
Generated label.

render()source 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

Implementation of

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

secureFields()source 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

_clearIds()source protected

_clearIds( )

Clear the stored ID suffixes.

_domId()source 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.

_id()source 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 detail

$_labelsource

protected Cake\View\Widget\LabelWidget

Label instance.

$_templatessource

protected Cake\View\StringTemplate

Template instance.

© 2005–2017 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.4/class-Cake.View.Widget.RadioWidget.html