/** * @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]); }