Completed
Push — master ( 5b7ff5...aa63f9 )
by Stepan
16:48 queued 07:41
created

GetSonataLocalsRequiredService   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 30
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 4
eloc 9
dl 0
loc 30
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A getLocalsRequiredArray() 0 8 3
1
<?php
2
3
namespace Application\Bundle\DefaultBundle\Service;
4
5
/**
6
 * Class GetSonataLocalsRequiredService.
7
 */
8
class GetSonataLocalsRequiredService
9
{
10
    private $defaultLocale;
11
    private $locales;
12
13
    /**
14
     * GetSonataLocalsRequiredService constructor.
15
     *
16
     * @param string $defaultLocale
17
     * @param array  $locales
18
     */
19
    public function __construct($defaultLocale, array $locales)
20
    {
21
        $this->locales = $locales;
22
        $this->defaultLocale = $defaultLocale;
23
    }
24
25
    /**
26
     * @param bool|null $setAllAs
27
     *
28
     * @return array
29
     */
30
    public function getLocalsRequiredArray($setAllAs = null)
31
    {
32
        $result = [];
33
        foreach ($this->locales as $locale) {
34
            $result[$locale] = ['required' => (null === $setAllAs) ? $locale === $this->defaultLocale : $setAllAs];
35
        }
36
37
        return $result;
38
    }
39
}
40