Completed
Push — 1.4 ( 6d2117...6a8cc3 )
by Kamil
28:28 queued 23:18
created

LocaleExtension::getCountryCode()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 4
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 1
1
<?php
2
3
/*
4
 * This file is part of the Sylius package.
5
 *
6
 * (c) Paweł Jędrzejewski
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
declare(strict_types=1);
13
14
namespace Sylius\Bundle\LocaleBundle\Twig;
15
16
use Sylius\Bundle\LocaleBundle\Templating\Helper\LocaleHelperInterface;
17
18
final class LocaleExtension extends \Twig_Extension
19
{
20
    /** @var LocaleHelperInterface */
21
    private $localeHelper;
22
23
    public function __construct(LocaleHelperInterface $localeHelper)
24
    {
25
        $this->localeHelper = $localeHelper;
26
    }
27
28
    /**
29
     * {@inheritdoc}
30
     */
31
    public function getFilters(): array
32
    {
33
        return [
34
            new \Twig_Filter('sylius_locale_name', [$this->localeHelper, 'convertCodeToName']),
35
            new \Twig_Filter('sylius_locale_country', [$this, 'getCountryCode']),
36
        ];
37
    }
38
39
    /**
40
     * @param string $locale
41
     *
42
     * @return null|string
43
     */
44
    public function getCountryCode(string $locale): ?string
45
    {
46
        return \Locale::getRegion($locale);
47
    }
48
}
49