Passed
Push — master ( e98e31...880950 )
by Bruno
06:29
created

Button   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 20
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
eloc 10
c 1
b 0
f 1
dl 0
loc 20
rs 10
wmc 3

1 Method

Rating   Name   Duplication   Size   Complexity  
A render() 0 18 3
1
<?php declare(strict_types=1);
2
3
namespace Formularium\Frontend\HTML\Element;
4
5
use Formularium\Element;
6
use Formularium\HTMLNode;
7
8
class Button extends Element
9
{
10
    public function render(array $parameters, HTMLNode $previous): HTMLNode
11
    {
12
        $node = new HTMLNode('button');
13
14
        $node->setAttributes([
15
            'type' => 'submit', // TODO
16
            'class' => '',
17
        ]);
18
19
        $node->setContent($parameters[self::LABEL] ?? '');
20
21
        foreach ([static::DISABLED, static::READONLY] as $v) {
22
            if ($parameters[$v] ?? false) {
23
                $node->setAttribute($v, $v);
24
            }
25
        }
26
27
        return $node;
28
    }
29
}
30