コード例 #1
0
ファイル: ProductController.php プロジェクト: htom78/XZB2c
 public function actionUpdate()
 {
     $this->htmlOption = array('class' => 'icon-head head-products', 'header' => "编辑商品", 'button' => array(array('class' => 'scalable save', 'id' => 'form-save', 'header' => '保存')));
     $product = $this->loadModel();
     $image = new image_entity();
     $image->image_product_ID = $product->product_ID;
     $discount = new discount_quantity();
     $discount->product_ID = $product->product_ID;
     if (isset($_POST['product'])) {
         $product->attributes = $_POST['product'];
         $product->product_reducetion_from = $_POST['product']['product_reducetion_from'];
         $product->product_reducetion_to = $_POST['product']['product_reducetion_to'];
         $product->seo->attributes = $_POST['seo'];
         $product->validate();
         $product->product_def_category_ID = category_entity::resolveDefCategory($_POST['product']['product_category_ID']);
         if ($product->seo->validate()) {
             $product->seo->save();
             if ($product->save()) {
                 //process image stuffer
                 if ($_POST['image']) {
                     foreach ($_POST['image'] as $key => $row) {
                         $imageModel = image_entity::model()->findByPk($key);
                         $imageModel->image_legend = $row['legend'];
                         $imageModel->image_position = $row['position'];
                         $imageModel->update();
                     }
                 }
                 category_product::productAlert($product->product_ID, $_POST['product']['product_category_ID']);
                 $this->redirect(array('index'));
             }
         }
         $tree = $this->constructCategoryTree($_POST['product']['product_category_ID']);
     }
     if (!isset($tree)) {
         $tree = $this->constructCategoryTree(category_product::getCategoryIDS($product->product_ID));
     }
     if (!isset($_POST['product']['product_status'])) {
         $status = product_entity::resovelProductStatus($product->product_status);
     } else {
         $status = $_POST['product']['product_status'];
     }
     $this->constructScript('update');
     $this->sideView = 'sidebar/update';
     $this->layout = 'column2';
     $this->render('update', array('model' => $product, 'tree' => $tree, 'image' => $image, 'status' => $status, 'discount' => $discount));
 }