Completed
Push — master ( 4d6583...31ed54 )
by Vojtěch
02:09
created

ChangeTranslatorLocaleHandler   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 25
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 2

Importance

Changes 0
Metric Value
wmc 3
lcom 1
cbo 2
dl 0
loc 25
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 5 1
A onChangeLanguage() 0 6 2
1
<?php
2
3
namespace SixtyEightPublishers\Application\Environment\Translation;
4
5
use Kdyby\Translation\ITranslator;
6
use SixtyEightPublishers\Application\Environment\Environment;
7
8
/**
9
 * @internal
10
 */
11
class ChangeTranslatorLocaleHandler
12
{
13
	/** @var \Kdyby\Translation\ITranslator  */
14
	private $translator;
15
16
	/**
17
	 * @param \SixtyEightPublishers\Application\Environment\Environment     $environment
18
	 * @param \Kdyby\Translation\ITranslator                                $translator
19
	 */
20
	public function __construct(Environment $environment, ITranslator $translator)
21
	{
22
		$environment->getProfile()->onChangeLanguage[] = [$this, 'onChangeLanguage'];
23
		$this->translator = $translator;
24
	}
25
26
	/**
27
	 * @param string $language
28
	 */
29
	public function onChangeLanguage($language)
30
	{
31
		if (method_exists($this->translator, 'setLocale')) {
32
			$this->translator->setLocale($language);
33
		}
34
	}
35
}
36