Beispiel #1
0
 /**
  * Создание новой root категории
  * @return boolean
  */
 public function createRootCategory()
 {
     if ($this->validate()) {
         $category = new Categories();
         $category->name = $this->category_name;
         $category->category_type_id = $this->category_type_id;
         $category->parent_id = null;
         return $category->save();
     }
     return false;
 }
 public function actionRenameCategory()
 {
     $category_id = Yii::$app->request->post('category_id');
     $category_name = Yii::$app->request->post('category_name');
     if (Yii::$app->getRequest()->isAjax && $category_id && $category_name) {
         return Categories::renameCategory($category_id, $category_name);
     }
 }
 /**
  * Ищет перевод по категории и языку. Если не находит, создает новый с названием оригинала
  * @param int $category_id
  * @param int $lang_id
  * @return array
  */
 public static function getTranslation($category_id, $lang_id)
 {
     $translation = self::findOne(['category_id' => $category_id, 'language_id' => $lang_id]);
     if (!$translation) {
         $original_name = Categories::find()->select('name')->where(['id' => $category_id])->scalar();
         $translation = new self();
         $translation->name = $original_name;
         $translation->category_id = $category_id;
         $translation->language_id = $lang_id;
         $translation->save();
     }
     return $translation->toArray();
 }