Example #1
0
 /**
  * Updates an existing ProductCategory model.
  * If update is successful, the browser will be redirected to the 'view' page.
  * @param integer $id
  * @return mixed
  */
 public function actionUpdate($id)
 {
     $model = $this->findModel($id);
     $ProductCategorySelfRel_q = ProductCategorySelfRel::find()->where(['cat_id' => $id])->all();
     if (empty($ProductCategorySelfRel_q)) {
         $ProductCategorySelfRel = new ProductCategorySelfRel();
     } else {
         $ProductCategorySelfRel = new ProductCategorySelfRel();
         $ProductCategorySelfRel->parent_cat_id = ArrayHelper::getColumn($ProductCategorySelfRel_q, 'parent_cat_id');
     }
     $old_image = $model->image;
     if ($model->load(Yii::$app->request->post()) && $ProductCategorySelfRel->load(Yii::$app->request->post())) {
         $model_image = UploadedFile::getInstance($model, 'image');
         $time = time();
         if ($model_image) {
             $model->image = $time . $model_image->baseName . '.' . $model_image->extension;
         } else {
             $model->image = $old_image;
         }
         if ($model->save()) {
             if ($model_image) {
                 $model_image->saveAs('category_img/' . $time . $model_image->baseName . '.' . $model_image->extension);
             }
             $ProductCategorySelfRel->cat_id = $model->id;
             if (empty($ProductCategorySelfRel->parent_cat_id)) {
                 ProductCategorySelfRel::deleteAll(['cat_id' => $ProductCategorySelfRel->cat_id]);
                 $ProductCategorySelfRel->parent_cat_id = 0;
                 $ProductCategorySelfRel->save();
             } else {
                 ProductCategory::update_ProductCategory_self_rel($ProductCategorySelfRel);
             }
             return $this->redirect(['view', 'id' => $model->id]);
         } else {
             echo '<pre>';
             var_dump($model->getErrors());
         }
     } else {
         return $this->render('update', ['model' => $model, 'ProductCategorySelfRel' => $ProductCategorySelfRel]);
     }
 }
Example #2
0
 public static function update_ProductCategory_self_rel($model)
 {
     ProductCategorySelfRel::deleteAll(['cat_id' => $model->cat_id]);
     foreach ($model->parent_cat_id as $key => $value) {
         $new_model = new ProductCategorySelfRel();
         $new_model->cat_id = $model->cat_id;
         $new_model->parent_cat_id = $value;
         if ($new_model->save()) {
         } else {
             throw new NotFoundHttpException('The requested page does not exist.');
         }
     }
     return true;
 }
 /**
  * Updates an existing ProductCategory model.
  * If update is successful, the browser will be redirected to the 'view' page.
  * @param integer $id
  * @return mixed
  */
 public function actionUpdate($id)
 {
     $model = $this->findModel($id);
     $ProductCategorySelfRel_q = ProductCategorySelfRel::find()->where(['cat_id' => $id])->all();
     if (empty($ProductCategorySelfRel_q)) {
         $ProductCategorySelfRel = new ProductCategorySelfRel();
     } else {
         $ProductCategorySelfRel = new ProductCategorySelfRel();
         $ProductCategorySelfRel->parent_cat_id = ArrayHelper::getColumn($ProductCategorySelfRel_q, 'parent_cat_id');
     }
     if ($model->load(Yii::$app->request->post()) && $ProductCategorySelfRel->load(Yii::$app->request->post())) {
         if ($model->save()) {
             $ProductCategorySelfRel->cat_id = $model->id;
             if (empty($ProductCategorySelfRel->parent_cat_id)) {
                 ProductCategorySelfRel::deleteAll(['cat_id' => $ProductCategorySelfRel->cat_id]);
                 $ProductCategorySelfRel->parent_cat_id = 0;
                 $ProductCategorySelfRel->save();
             } else {
                 ProductCategory::update_ProductCategory_self_rel($ProductCategorySelfRel);
             }
             return $this->redirect(['view', 'id' => $model->id]);
         } else {
             echo '<pre>';
             var_dump($model->getErrors());
         }
     } else {
         return $this->render('update', ['model' => $model, 'ProductCategorySelfRel' => $ProductCategorySelfRel]);
     }
 }