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

Partial   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 28
Duplicated Lines 0 %

Test Coverage

Coverage 69.23%

Importance

Changes 0
Metric Value
eloc 12
dl 0
loc 28
ccs 9
cts 13
cp 0.6923
rs 10
c 0
b 0
f 0
wmc 3

2 Methods

Rating   Name   Duplication   Size   Complexity  
A render() 0 3 1
A build() 0 13 2
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