Completed
Push — master ( c47098...bd2863 )
by Shcherbak
37:44 queued 22:47
created

RadioList::render()   A

Complexity

Conditions 3
Paths 3

Size

Total Lines 19
Code Lines 13

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
dl 0
loc 19
rs 9.4285
c 1
b 0
f 0
cc 3
eloc 13
nc 3
nop 0
1
<?php
2
3
  namespace Fiv\Form\Element;
4
5
  /**
6
   * Generate <input type="radio"> html tag
7
   *
8
   * @author  Ivan Shcherbak <[email protected]>
9
   * @package Fiv\Form
10
   */
11
  class RadioList extends \Fiv\Form\Element\Multiple {
12
13
    /**
14
     * @return string
15
     */
16
    public function render() {
17
      $html = '';
18
      $currentValue = $this->getValue();
19
      $attributes = $this->attributes;
20
      $attributes['type'] = 'radio';
21
22
      foreach ($this->options as $value => $text) {
23
        $attributes['value'] = $value;
24
        if ($currentValue == $value) {
25
          $attributes['checked'] = 'checked';
26
        } else {
27
          unset($attributes['checked']);
28
        }
29
30
        $html .= '<label>' . static::tag('input', $attributes) . $text . '</label>';
31
      }
32
33
      return $html;
34
    }
35
  }