Passed
Push — master ( 53136f...ce1219 )
by Thomas
16:59 queued 07:11
created

AbstractController   A

Complexity

Total Complexity 6

Size/Duplication

Total Lines 59
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 4

Importance

Changes 3
Bugs 1 Features 1
Metric Value
c 3
b 1
f 1
dl 0
loc 59
rs 10
wmc 6
lcom 1
cbo 4

4 Methods

Rating   Name   Duplication   Size   Complexity  
A setContainer() 0 15 3
A addErrorMessage() 0 4 1
A addSuccessMessage() 0 4 1
A addInfoMessage() 0 4 1
1
<?php
2
3
namespace AppBundle\Controller;
4
5
use AppBundle\Legacy\Traits\LegacyTemplateTrait;
6
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
7
use Symfony\Component\DependencyInjection\ContainerInterface;
8
9
class AbstractController extends Controller
10
{
11
    use LegacyTemplateTrait;
12
13
    /**
14
     * Sets the container.
15
     *
16
     * There is no container available in the constructor of a controller, so we override setContainer() and use this
17
     *
18
     * @param \Symfony\Component\DependencyInjection\ContainerInterface|null $container A ContainerInterface instance or null.
19
     *
20
     * @return void
21
     */
22
    public function setContainer(ContainerInterface $container = null)
23
    {
24
        parent::setContainer($container);
25
26
        if ($container === null) {
27
            return;
28
        }
29
30
        $requestStack = $container->get('request_stack');
31
        /** @var \Symfony\Component\HttpFoundation\Request $masterRequest */
32
        $masterRequest = $requestStack->getMasterRequest();
33
        if ($masterRequest) {
34
            $this->setTarget($masterRequest->getUri());
35
        }
36
    }
37
38
    /**
39
     * @param string $message
40
     *
41
     * @return void
42
     */
43
    protected function addErrorMessage($message)
44
    {
45
        $this->addFlash('error', $message);
46
    }
47
48
    /**
49
     * @param string $message
50
     *
51
     * @return void
52
     */
53
    protected function addSuccessMessage($message)
54
    {
55
        $this->addFlash('success', $message);
56
    }
57
58
    /**
59
     * @param string $message
60
     *
61
     * @return void
62
     */
63
    protected function addInfoMessage($message)
64
    {
65
        $this->addFlash('info', $message);
66
    }
67
}
68