MessageRedirectHelper   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 33
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 11
dl 0
loc 33
rs 10
c 0
b 0
f 0
wmc 3

3 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 8 1
A warningRedirect() 0 5 1
A confirmationRedirect() 0 5 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Locastic\SyliusComparerPlugin\Utils;
6
7
use Symfony\Component\HttpFoundation\RedirectResponse;
8
use Symfony\Component\HttpFoundation\Session\Flash\FlashBagInterface;
9
use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
10
use Symfony\Component\Translation\TranslatorInterface;
11
12
class MessageRedirectHelper implements MessageRedirectHelperInterface
13
{
14
    /** @var FlashBagInterface */
15
    private $flashBag;
16
17
    /** @var UrlGeneratorInterface */
18
    private $urlGenerator;
19
20
    /** @var TranslatorInterface */
21
    private $translator;
22
23
    public function __construct(
24
        FlashBagInterface $flashBag,
25
        UrlGeneratorInterface $urlGenerator,
26
        TranslatorInterface $translator
27
    ) {
28
        $this->flashBag = $flashBag;
29
        $this->urlGenerator = $urlGenerator;
30
        $this->translator = $translator;
31
    }
32
33
    public function warningRedirect(string $messageTranslation, string $routeName): RedirectResponse
34
    {
35
        $this->flashBag->add('error', $this->translator->trans($messageTranslation));
36
37
        return new RedirectResponse($this->urlGenerator->generate($routeName));
38
    }
39
40
    public function confirmationRedirect(string $messageTranslation, string $routeName): RedirectResponse
41
    {
42
        $this->flashBag->add('success', $this->translator->trans($messageTranslation));
43
44
        return new RedirectResponse($this->urlGenerator->generate($routeName));
45
    }
46
}
47