/** * Returnes language object by id and language_id. If not found, creates a new one. * @param integer $id LanguageSource id * @param string $languageId Language language_id * @return LanguageTranslate * @deprecated since version 1.2.7 */ public static function getLanguageTranslateByIdAndLanguageId($id, $languageId) { $languageTranslate = LanguageTranslate::findOne(['id' => $id, 'language' => $languageId]); if (!$languageTranslate) { $languageTranslate = new LanguageTranslate(['id' => $id, 'language' => $languageId]); } return $languageTranslate; }
/** * Returning messages in the given language * @return string */ public function run() { $languageTranslate = LanguageTranslate::findOne(['id' => Yii::$app->request->get('id', 0), 'language' => Yii::$app->request->get('language_id', '')]); if ($languageTranslate) { $translation = $languageTranslate->translation; } else { $languageSource = LanguageSource::findOne(['id' => Yii::$app->request->get('id', 0)]); $translation = $languageSource ? $languageSource->message : ''; } return $translation; }
/** * Saving translated language elements. * @return Json */ public function run() { Yii::$app->response->format = Response::FORMAT_JSON; $id = Yii::$app->request->post('id', 0); $languageId = Yii::$app->request->post('language_id', Yii::$app->language); $languageTranslate = LanguageTranslate::findOne(['id' => $id, 'language' => $languageId]) ?: new LanguageTranslate(['id' => $id, 'language' => $languageId]); $languageTranslate->translation = Yii::$app->request->post('translation', ''); if ($languageTranslate->validate() && $languageTranslate->save()) { $generator = new Generator($this->controller->module, $languageId); $generator->generate(); } return $languageTranslate->getErrors(); }