Test Failed
Push — master ( 6de795...4e1c14 )
by Paul
04:01
created

Partial   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 36
Duplicated Lines 0 %

Test Coverage

Coverage 64.29%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 4
eloc 13
c 1
b 0
f 0
dl 0
loc 36
ccs 9
cts 14
cp 0.6429
rs 10

3 Methods

Rating   Name   Duplication   Size   Complexity  
A render() 0 3 1
A build() 0 13 2
A app() 0 3 1
1
<?php
2
3
namespace GeminiLabs\SiteReviews\Modules\Html;
4
5
use GeminiLabs\SiteReviews\Helper;
6
7
class Partial
8
{
9
    /**
10
     * @param string $partialPath
11
     * @return string|void
12
     */
13 6
    public function build($partialPath, array $args = [])
14
    {
15 6
        $className = Helper::buildClassName($partialPath, 'Modules\Html\Partials');
16 6
        $className = $this->app()->filterString('partial/classname', $className, $partialPath);
17 6
        if (!class_exists($className)) {
18
            glsr_log()->error('Partial missing: '.$className);
19
            return;
20
        }
21 6
        $args = $this->app()->filterArray('partial/args/'.$partialPath, $args);
22 6
        $partial = glsr($className)->build($args);
23 6
        $partial = $this->app()->filterString('rendered/partial', $partial, $partialPath, $args);
24 6
        $partial = $this->app()->filterString('rendered/partial/'.$partialPath, $partial, $args);
25 6
        return $partial;
26
    }
27
28
    /**
29
     * @param string $partialPath
30
     * @return void
31
     */
32
    public function render($partialPath, array $args = [])
33
    {
34
        echo $this->build($partialPath, $args);
35
    }
36
37
    /**
38
     * @return \GeminiLabs\SiteReviews\Application|\GeminiLabs\SiteReviews\Addons\Addon
39
     */
40
    protected function app()
41
    {
42
        return glsr();
43
    }
44
}
45