languages->languageModel(); $this->items = $model->getLanguages(); } /** * @return string */ public function run() { $items = []; if (!empty($this->items)) { foreach ($this->items as $lang) { $path = \Yii::$app->request->pathInfo; if ($lang['local'] == Yii::$app->language) { $this->current = [ 'label' => $lang['label'], 'url' => '/' . $lang['alias'] . '/' . $path, 'alias' => $lang['alias'], 'img' => $lang->getImageLink(), 'model' => $lang, ]; } if (!$lang['by_default']) { $items[] = [ 'label' => $lang['label'], 'url' => '/' . $lang['alias'] . '/' . $path, 'alias' => $lang['alias'], 'img' => $lang->getImageLink(), 'model' => $lang, ]; } else { $items[] = [ 'label' => $lang['label'], 'url' => '/' . $path, 'alias' => $lang['alias'], 'img' => $lang->getImageLink(), 'model' => $lang, ]; } } foreach ($items as $item) { if ($item['alias'] == 'en' && $this->current['alias'] == 'ua') { return Html::a($item['label'], $item['url'], [ 'class' => 'language en', // 'style' => $this->current['img'] ? 'background-image: url("' . $this->current['img'] . '")' : false 'style' => 'background-image: url("' . $item['img'] . '")' ]); break; } elseif ($item['alias'] == 'ua' && $this->current['alias'] == 'en') { return Html::a($item['label'], $item['url'], [ 'class' => 'language ua', // 'style' => $this->current['img'] ? 'background-image: url("' . $this->current['img'] . '")' : false 'style' => 'background-image: url("' . $item['img'] . '")' ]); break; } } } } }