Completed
Push — master ( f337c2...4ac545 )
by Nate
03:29
created

Template::renderTemplate()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 7
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
dl 0
loc 7
ccs 0
cts 7
cp 0
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 4
nc 1
nop 1
crap 2
1
<?php
2
3
/**
4
 * @copyright  Copyright (c) Flipbox Digital Limited
5
 * @license    https://flipboxfactory.com/software/guardian/license
6
 * @link       https://www.flipboxfactory.com/software/guardian/
7
 */
8
9
namespace flipbox\ember\views;
10
11
use Craft;
12
use craft\web\View;
13
use yii\base\BaseObject;
14
15
/**
16
 * @author Flipbox Factory <[email protected]>
17
 * @since 1.0.0
18
 */
19
class Template extends BaseObject implements ViewInterface
20
{
21
    /**
22
     * @var string
23
     */
24
    public $mode = View::TEMPLATE_MODE_CP;
25
26
    /**
27
     * @var string
28
     */
29
    public $template = '';
30
31
    /**
32
     * @param array $params
33
     * @return string
34
     */
35
    public function render(array $params = []): string
36
    {
37
        $view = Craft::$app->getView();
38
39
        $currentMode = $view->getTemplateMode();
40
        $view->setTemplateMode($this->mode);
41
42
        $html = $this->renderTemplate($params);
43
44
        $view->setTemplateMode($currentMode);
45
46
        return $html;
47
    }
48
49
    /**
50
     * @param array $params
51
     * @return string
52
     */
53
    protected function renderTemplate(array $params = []): string
54
    {
55
        return Craft::$app->getView()->renderTemplate(
56
            $this->template,
57
            $params
58
        );
59
    }
60
}
61