public function bootstrap($app) { $app->on(Application::EVENT_BEFORE_REQUEST, function () { Yii::$container->set('neverseen\\multilingual\\MultilingualBehavior', ['languages' => Languages::getCodeNamePairs(), 'languageTableName' => Languages::tableName(), 'languageField' => 'iso639', 'localizedPrefix' => '', 'requireTranslations' => false, 'dynamicLangClass' => true, 'abridge' => false, 'defaultLanguage' => 'en-US']); }); }
/** * @param $records * @return array */ protected function indexByLanguage($records) { $sorted = array(); foreach ($records as $record) { $language = Languages::getById($record->languages_id)->{$this->languageField}; $sorted[$language] = $record; } unset($records); return $sorted; }
public function count($q = '*', $db = null) { $this->joinWith('translation')->andWhere(['languages_id' => Languages::getId()]); return parent::count($q, $db); }