File tree 1 file changed +34
-0
lines changed
1 file changed +34
-0
lines changed Original file line number Diff line number Diff line change
1
+ <?php
2
+ /**
3
+ * @author Dmytro Karpovych
4
+ * @copyright 2015 NRE
5
+ */
6
+
7
+ namespace nullref \core \components \i18n ;
8
+
9
+
10
+ use Yii ;
11
+ use yii \i18n \PhpMessageSource as BasePhpMessageSource ;
12
+ use yii \helpers \ArrayHelper ;
13
+
14
+ class PhpMessageSource extends BasePhpMessageSource
15
+ {
16
+ protected $ _parentMessages = [];
17
+ protected function loadMessages ($ category , $ language )
18
+ {
19
+ $ messages = parent ::loadMessages ($ category , $ language );
20
+
21
+ if ((strpos ($ category , '* ' ) > 0 )){
22
+ return $ messages ;
23
+ }
24
+ $ key = $ category . '/ ' . $ language ;
25
+
26
+ if (!isset ($ this ->_parentMessages [$ key ])){
27
+ $ parent = Yii::$ app ->getI18n ()->getMessageSource ($ category .'* ' );
28
+ $ oldMessages = $ parent ->loadMessages ($ category , $ language );
29
+ $ this ->_parentMessages [$ key ] = ArrayHelper::merge ($ messages , $ oldMessages );
30
+ }
31
+ return $ this ->_parentMessages [$ key ];
32
+ }
33
+
34
+ }
You can’t perform that action at this time.
0 commit comments