LoginController   A
last analyzed

Complexity

Total Complexity 5

Size/Duplication

Total Lines 56
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 4

Importance

Changes 1
Bugs 1 Features 0
Metric Value
wmc 5
lcom 1
cbo 4
dl 0
loc 56
c 1
b 1
f 0
rs 10

5 Methods

Rating   Name   Duplication   Size   Complexity  
A logoutAction() 0 3 1
A logincheckAction() 0 3 1
A render() 0 4 1
A __construct() 0 5 1
A loginAction() 0 10 1
1
<?php
2
3
namespace Dominikzogg\EnergyCalculator\Controller;
4
5
use Saxulum\RouteController\Annotation\DI;
6
use Saxulum\RouteController\Annotation\Route;
7
use Symfony\Component\HttpFoundation\Request;
8
use Symfony\Component\HttpFoundation\Response;
9
10
/**
11
 * @Route("/{_locale}", asserts={"_locale"="([a-z]{2}|[a-z]{2}_[A-Z]{2})"})
12
 * @DI(serviceIds={
13
 *      "security.last_error",
14
 *      "twig"
15
 * })
16
 */
17
class LoginController
18
{
19
    /**
20
     * @var \Twig_Environment
21
     */
22
    protected $twig;
23
24
    /**
25
     * @var callback
26
     */
27
    protected $securityLastError;
28
29
    public function __construct($securityLastError, \Twig_Environment $twig)
30
    {
31
        $this->securityLastError = $securityLastError;
32
        $this->twig = $twig;
33
    }
34
35
    /**
36
     * @Route("/login", bind="login", method="GET")
37
     */
38
    public function loginAction(Request $request)
39
    {
40
        $securityLastError = $this->securityLastError;
41
42
        // return the rendered template
43
        return $this->render('@DominikzoggEnergyCalculator/Login/login.html.twig', array(
44
            'error'         => $securityLastError($request),
45
            'last_username' => $request->getSession()->get('_security.last_username'),
46
        ));
47
    }
48
49
    /**
50
     * @Route("/logout", bind="logout", method="GET")
51
     */
52
    public function logoutAction()
53
    {
54
    }
55
56
    /**
57
     * @Route("/login_check", bind="login_check", method="POST")
58
     */
59
    public function logincheckAction()
60
    {
61
    }
62
63
    /**
64
     * @param $view
65
     * @param  array    $parameters
66
     * @return Response
67
     */
68
    protected function render($view, array $parameters = array())
69
    {
70
        return new Response($this->twig->render($view, $parameters));
71
    }
72
}
73