public function actionUpdate($id)
 {
     $categories = Category::getCategoriesList();
     if (!$categories) {
         $categories = array();
     }
     $product = Product::getProductById($id);
     if (!$product) {
         $product = array();
     }
     if (isset($_POST['submit'])) {
         $options['name'] = FunctionLibrary::clearStr($_POST['name']);
         $options['code'] = FunctionLibrary::clearInt($_POST['code']);
         $options['price'] = FunctionLibrary::clearFloat($_POST['price']);
         $options['brand'] = FunctionLibrary::clearStr($_POST['brand']);
         $options['category_id'] = FunctionLibrary::clearInt($_POST['category_id']);
         $options['availability'] = FunctionLibrary::clearInt($_POST['availability']);
         $options['is_new'] = FunctionLibrary::clearInt($_POST['is_new']);
         $options['is_recommended'] = FunctionLibrary::clearInt($_POST['is_recommended']);
         $options['status'] = FunctionLibrary::clearInt($_POST['status']);
         $options['description'] = FunctionLibrary::clearStr($_POST['description']);
         $errors = array();
         if (!User::checkName($options['name'])) {
             $errors[] = 'Название не может быть пустым.';
         }
         if ($id && empty($errors)) {
             $result = Product::updateProductById($id, $options);
             if (!$result) {
                 $message = 'Произошла ошибка при редактировании!';
             } else {
                 if (!empty($_FILES['image']['tmp_name'])) {
                     $fileName = $_FILES['image']['tmp_name'];
                     if (is_uploaded_file($fileName)) {
                         /*
                          * Следующие две строки для того чтобы
                          * иметь возможность поменять запись no-image
                          * в базе данных (а иначе поменяется только
                          * картинка в папке на сервере)
                          */
                         $imagePath = "/images/home/product{$id}.jpg";
                         $result = Product::putImageToDataBase($id, $imagePath);
                         if ($result) {
                             $destination = ROOT . "/template" . $imagePath;
                             move_uploaded_file($fileName, $destination);
                         }
                     }
                 }
                 FunctionLibrary::redirectTo('/admin/product');
             }
         }
     }
     require_once ROOT . '/views/admin-product/update.php';
     return true;
 }
예제 #2
0
 public function actionUpdate($id)
 {
     $order = Order::getOrderById($id, false);
     if (isset($order) && !empty($order)) {
         $id = $order['id'];
         $status = $order['status'];
     }
     $orderParams = (include ROOT . '/config/order-params.php');
     if (!$orderParams) {
         $orderParams = array();
     }
     if (isset($_POST['submit'])) {
         $status = FunctionLibrary::clearInt($_POST['status']);
         if ($status) {
             Order::editOrder($id, $status);
             FunctionLibrary::redirectTo('/admin/order');
         }
     }
     require_once ROOT . '/views/admin-order/update.php';
     return true;
 }