Passed
Push — master ( 817cab...57b58d )
by Paul
09:30 queued 02:21
created

Partial::build()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 13
Code Lines 10

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 9
CRAP Score 2.024

Importance

Changes 0
Metric Value
cc 2
eloc 10
nc 2
nop 2
dl 0
loc 13
ccs 9
cts 11
cp 0.8182
crap 2.024
rs 9.9332
c 0
b 0
f 0
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 = glsr()->filterString('partial/classname', $className, $partialPath);
17 6
        if (!class_exists($className)) {
18
            glsr_log()->error('Partial missing: '.$className);
19
            return;
20
        }
21 6
        $args = glsr()->filterArray('partial/args/'.$partialPath, $args);
22 6
        $partial = glsr($className)->build($args);
23 6
        $partial = glsr()->filterString('rendered/partial', $partial, $partialPath, $args);
24 6
        $partial = glsr()->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