RadioList::render()   A
last analyzed

Complexity

Conditions 3
Paths 3

Size

Total Lines 19
Code Lines 13

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 11
CRAP Score 3.0052

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 19
ccs 11
cts 12
cp 0.9167
rs 9.4285
cc 3
eloc 13
nc 3
nop 0
crap 3.0052
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
   */
10
  class RadioList extends Multiple {
11
12
    /**
13
     * @return string
14
     */
15 1
    public function render() {
16 1
      $html = '';
17 1
      $currentValue = $this->getValue();
18 1
      $attributes = $this->attributes;
19 1
      $attributes['type'] = 'radio';
20
21 1
      foreach ($this->options as $value => $text) {
22 1
        $attributes['value'] = $value;
23 1
        if ($currentValue == $value) {
24
          $attributes['checked'] = 'checked';
25
        } else {
26 1
          unset($attributes['checked']);
27
        }
28
29 1
        $html .= '<label>' . static::tag('input', $attributes) . $text . '</label>';
30
      }
31
32 1
      return $html;
33
    }
34
  }