Commit 910ba2701ba1be9f101697e6dc5ce3b5e1340cfc
1 parent
8a735882
Language try redirect
Showing
2 changed files
with
13 additions
and
7 deletions
Show diff stats
components/LanguageRequest.php
... | ... | @@ -11,11 +11,6 @@ |
11 | 11 | |
12 | 12 | private $languageUrl; |
13 | 13 | |
14 | - public function processOld() | |
15 | - { | |
16 | - \Yii::$app->response->redirect('http://google.com'); | |
17 | - } | |
18 | - | |
19 | 14 | public function getLanguageUrl() |
20 | 15 | { |
21 | 16 | if($this->languageUrl === NULL) { |
... | ... | @@ -23,8 +18,12 @@ |
23 | 18 | |
24 | 19 | $url_list = explode('/', $this->languageUrl); |
25 | 20 | |
21 | + | |
26 | 22 | $language_url = isset( $url_list[ 1 ] ) ? $url_list[ 1 ] : NULL; |
27 | - Language::setCurrent($language_url); | |
23 | + $is_language = Language::setCurrent($language_url); | |
24 | + if(!$is_language) { | |
25 | + \Yii::$app->response->redirect('/'.Language::getCurrent()->url.$this->url, 302, false); | |
26 | + } | |
28 | 27 | |
29 | 28 | if($language_url !== NULL && $language_url === Language::getCurrent()->url && strpos($this->languageUrl, Language::getCurrent()->url) === 1) { |
30 | 29 | $this->languageUrl = substr($this->languageUrl, strlen(Language::getCurrent()->url) + 1); | ... | ... |
models/Language.php
... | ... | @@ -120,17 +120,24 @@ |
120 | 120 | } |
121 | 121 | return self::$current; |
122 | 122 | } |
123 | - | |
123 | + | |
124 | 124 | /** |
125 | 125 | * Set current language by Url param |
126 | 126 | * |
127 | 127 | * @param null|string $url Language url param |
128 | + * | |
129 | + * @return bool | |
128 | 130 | */ |
129 | 131 | public static function setCurrent($url = null) |
130 | 132 | { |
131 | 133 | $language = self::getLanguageByUrl($url); |
132 | 134 | self::$current = ( $language === null ) ? self::getDefaultLanguage() : $language; |
133 | 135 | Yii::$app->language = self::$current->local; |
136 | + if($language === null) { | |
137 | + return false; | |
138 | + } else { | |
139 | + return true; | |
140 | + } | |
134 | 141 | } |
135 | 142 | |
136 | 143 | /** | ... | ... |