IndexAction   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 31
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Importance

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

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A __invoke() 0 4 1
1
<?php
2
3
namespace Admin\Action;
4
5
use Psr\Http\Message\ResponseInterface as Response;
6
use Psr\Http\Message\ServerRequestInterface as Request;
7
use Zend\Diactoros\Response\HtmlResponse;
8
use Zend\Expressive\Template\TemplateRendererInterface as Template;
9
10
/**
11
 * Class IndexAction.
12
 */
13
final class IndexAction
14
{
15
    /**
16
     * @var Template
17
     */
18
    private $template;
19
20
    /**
21
     * IndexAction constructor.
22
     *
23
     * @param Template $template template engine
24
     */
25
    public function __construct(Template $template)
26
    {
27
        $this->template = $template;
28
    }
29
30
    /**
31
     * Executed when action is called.
32
     *
33
     * @param Request       $request  request
34
     * @param Response      $response response
35
     * @param callable|null $next     next middleware
36
     *
37
     * @return HtmlResponse
38
     */
39
    public function __invoke(Request $request, Response $response, callable $next = null)
40
    {
41
        return new HtmlResponse($this->template->render('admin::index', ['layout' => 'layout/admin']));
42
    }
43
}
44