public function add() { if ($this->validate()) { $feature = new Features(); $feature->name = $this->feature_name; $feature->feature_type = $this->feature_type; if ($feature->feature_type == Features::VALUE_TYPE) { $this->feature_metric_id = null; } $feature->feature_metric_id = $this->feature_metric_id; return $feature->save(); } return false; }
/** * Ищет перевод по фиче и языку. Если не находит, создает новый с названием оригинала * @param int $feature_id * @param int $lang_id * @return array */ public static function getTranslation($feature_id, $lang_id) { $translation = self::findOne(['feature_id' => $feature_id, 'language_id' => $lang_id]); if (!$translation) { $original_name = Features::find()->select('name')->where(['id' => $feature_id])->scalar(); $translation = new self(); $translation->name = $original_name; $translation->feature_id = $feature_id; $translation->language_id = $lang_id; $translation->save(); } return $translation->toArray(); }
public function actionGetFeaturesByValue() { if (Yii::$app->getRequest()->isAjax && Yii::$app->request->post('value_id')) { return json_encode(Features::getByValue(Yii::$app->request->post('value_id'))); } }