/** * @param $name * * @return string * @since 1.0.2 */ public static function newPhrase($name) { $model = new Phrase(); $model->name = $name; if ($model->save()) { $PhraseTranslate = new PhraseTranslate(); $PhraseTranslate->phrase_id = $model->getPrimaryKey(); $PhraseTranslate->language_id = Language::getIdByCode(Yii::$app->language); $PhraseTranslate->value = 'error: phrase [' . $name . '] not found'; $PhraseTranslate->save(); } return 'error: phrase [' . $name . '] not found'; }
/** * @return string * @since 1.0.0 * @throws ExitException|InvalidParamException */ public function actionIndex() { $searchModel = new PhraseSearch(); $dataProvider = $searchModel->search(Yii::$app->request->queryParams); if (Yii::$app->request->post('hasEditable')) { $post = Yii::$app->request->post(); $out = Json::encode(['output' => '', 'message' => '']); $language_id = Language::getIdByCode($post['editableAttribute']); $phrase_id = $post['editableKey']; if ($language_id !== 0 && $phrase_id !== 0) { $model = PhraseTranslate::findOne(['phrase_id' => $phrase_id, 'language_id' => $language_id]); if ($model === null) { $model = new PhraseTranslate(); $model->language_id = $language_id; $model->phrase_id = $phrase_id; } $model->value = $post['Phrase'][$post['editableIndex']][$post['editableAttribute']]; $model->save(); $out = Json::encode(['output' => $model->value, 'message' => '']); } echo $out; Yii::$app->end(); } return $this->render('index', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider]); }
/** * @return PhraseTranslate[] * @since 1.0.2 */ public function getPhraseTranslate() { return $this->hasMany(PhraseTranslate::className(), ['language_id' => 'id'])->all(); }