Completed
Push — master ( a378d5...7b6893 )
by Flo
28s
created

AssetList   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 38
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Importance

Changes 0
Metric Value
wmc 4
lcom 0
cbo 2
dl 0
loc 38
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
B __invoke() 0 26 4
1
<?php
2
/**
3
 * Class AssetList | AssetList.php
4
 * @package Faulancer\View\Helper
5
 * @author  Florian Knapp <[email protected]>
6
 */
7
namespace Faulancer\View\Helper;
8
9
use Faulancer\View\AbstractViewHelper;
10
use Faulancer\View\ViewController;
11
12
/**
13
 * Class AssetList
14
 */
15
class AssetList extends AbstractViewHelper
16
{
17
18
    /**
19
     * Render a asset list by type
20
     *
21
     * @param ViewController $view
22
     * @param                $type
23
     * @return string
24
     */
25
    public function __invoke(ViewController $view, $type)
26
    {
27
        $result  = '';
28
        $pattern = '';
29
30
        switch ($type) {
31
32
            case 'js':
33
                $pattern = '<script src="%s"></script>';
34
                break;
35
36
            case 'css':
37
                $pattern = '<link rel="stylesheet" type="text/css" href="%s">';
38
                break;
39
40
        }
41
42
        /** @var array $files */
43
        $files = $view->getVariable('assets'.ucfirst($type));
44
45
        foreach ($files AS $file) {
46
            $result .= sprintf($pattern, $file) . "\n";
47
        }
48
49
        return $result;
50
    }
51
52
}