Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
| Total | |
0.00% |
0 / 1 |
|
0.00% |
0 / 2 |
CRAP | |
0.00% |
0 / 23 |
| Radio | |
0.00% |
0 / 1 |
|
0.00% |
0 / 2 |
30 | |
0.00% |
0 / 23 |
| getInfo | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 15 |
|||
| preRenderRadio | |
0.00% |
0 / 1 |
20 | |
0.00% |
0 / 8 |
|||
| <?php | |
| /** | |
| * @file | |
| * Contains \Drupal\Core\Render\Element\Radio. | |
| */ | |
| namespace Drupal\Core\Render\Element; | |
| use Drupal\Core\Render\Element; | |
| /** | |
| * Provides a form element for a single radio button. | |
| * | |
| * This is an internal element that is primarily used to render the radios form | |
| * element. Refer to \Drupal\Core\Render\Element\Radios for more documentation. | |
| * | |
| * @see \Drupal\Core\Render\Element\Radios | |
| * @see \Drupal\Core\Render\Element\Checkbox | |
| * | |
| * @FormElement("radio") | |
| */ | |
| class Radio extends FormElement { | |
| /** | |
| * {@inheritdoc} | |
| */ | |
| public function getInfo() { | |
| $class = get_class($this); | |
| return array( | |
| '#input' => TRUE, | |
| '#default_value' => NULL, | |
| '#process' => array( | |
| array($class, 'processAjaxForm'), | |
| ), | |
| '#pre_render' => array( | |
| array($class, 'preRenderRadio'), | |
| ), | |
| '#theme' => 'input__radio', | |
| '#theme_wrappers' => array('form_element'), | |
| '#title_display' => 'after', | |
| ); | |
| } | |
| /** | |
| * Prepares a #type 'radio' render element for input.html.twig. | |
| * | |
| * @param array $element | |
| * An associative array containing the properties of the element. | |
| * Properties used: #required, #return_value, #value, #attributes, #title, | |
| * #description. | |
| * | |
| * Note: The input "name" attribute needs to be sanitized before output, which | |
| * is currently done by initializing Drupal\Core\Template\Attribute with | |
| * all the attributes. | |
| * | |
| * @return array | |
| * The $element with prepared variables ready for input.html.twig. | |
| */ | |
| public static function preRenderRadio($element) { | |
| $element['#attributes']['type'] = 'radio'; | |
| Element::setAttributes($element, array('id', 'name', '#return_value' => 'value')); | |
| if (isset($element['#return_value']) && $element['#value'] !== FALSE && $element['#value'] == $element['#return_value']) { | |
| $element['#attributes']['checked'] = 'checked'; | |
| } | |
| static::setAttributes($element, array('form-radio')); | |
| return $element; | |
| } | |
| } |