public function actionUpdate($id)
 {
     self::checkAdmin();
     $category = new Category();
     $products = new Product();
     $categoriesList = $category->getCategoriesListAdmin();
     $subCategoriesList = $category->getSubCategoriesListAdmin();
     $product = Product::getProductById($id);
     if (isset($_POST['save'])) {
         $options['title'] = $_POST['name'];
         $options['code'] = $_POST['code'];
         $options['price'] = $_POST['price'];
         $options['category_id'] = $_POST['category_id'];
         $options['subcategory_id'] = $_POST['subcategory_id'];
         $options['brand'] = $_POST['brand'];
         $options['info'] = $_POST['info'];
         $options['description'] = $_POST['description'];
         $options['availability'] = $_POST['availability'];
         $options['sale'] = $_POST['sale'];
         $options['is_new'] = $_POST['is_new'];
         $options['is_recommended'] = $_POST['is_recommended'];
         $options['status'] = $_POST['status'];
         if ($products->updateProductById($id, $options)) {
             if (is_uploaded_file($_FILES['image']['tmp_name'])) {
                 move_uploaded_file($_FILES['image']['tmp_name'], $_SERVER['DOCUMENT_ROOT'] . '/upload/images/products/' . $id . '.jpg');
             }
         }
         header('Location: /admin/product');
     }
     require_once ROOT . '/views/admin_product/update.php';
     return true;
 }
 /**
  * Action для страницы "Редактировать товар"
  */
 public function actionUpdate($id)
 {
     $categoriesList = Category::getCategoriesListAdmin();
     $product = Product::getProductById($id);
     if (isset($_POST['submit'])) {
         $options['name'] = $_POST['name'];
         $options['code'] = $_POST['code'];
         $options['price'] = $_POST['price'];
         $options['category_id'] = $_POST['category_id'];
         $options['brand'] = $_POST['brand'];
         $options['availability'] = $_POST['availability'];
         $options['description'] = $_POST['description'];
         $options['is_new'] = $_POST['is_new'];
         $options['is_recommended'] = $_POST['is_recommended'];
         $options['status'] = $_POST['status'];
         // Сохраняем изменения
         if (Product::updateProductById($id, $options)) {
             echo '<pre>';
             print_r($_FILES["image"]);
             echo '</pre>';
             // Если запись сохранена
             // Проверим, загружалось ли через форму изображение
             if (is_uploaded_file($_FILES["image"]["tmp_name"])) {
                 // Если загружалось, переместим его в нужную папке, дадим новое имя
                 var_dump(move_uploaded_file($_FILES["image"]["tmp_name"], $_SERVER['DOCUMENT_ROOT'] . "/upload/images/products/{$id}.jpg"));
             }
         }
         header("Location: /admin/product");
     }
     require_once ROOT . '/views/admin_product/update.php';
     return true;
 }
 /**
  * @param $id
  * @return bool
  * Метод для редактирования товаров
  */
 public function actionUpdate($id)
 {
     $categoriesList = Category::getCategoriesListAdmin();
     $product = Product::getProductById($id);
     if (isset($_POST['submit'])) {
         $fields['name'] = $_POST['name'];
         $fields['code'] = $_POST['code'];
         $fields['price'] = $_POST['price'];
         $fields['category_id'] = $_POST['category_id'];
         $fields['availability'] = $_POST['availability'];
         $fields['description'] = $_POST['description'];
         $fields['is_new'] = $_POST['is_new'];
         $fields['is_recommended'] = $_POST['is_recommended'];
         $fields['status'] = $_POST['status'];
         if (Product::updateProductById($id, $fields)) {
             //сохранение изменений
             if (is_uploaded_file($_FILES["image"]["tmp_name"])) {
                 //если изображение сохранено,кидаем его в папку upload
                 move_uploaded_file($_FILES["image"]["tmp_name"], $_SERVER['DOCUMENT_ROOT'] . "/upload/images/products/{$id}.jpg");
             }
         }
         header("Location: /admin/product");
         //возращаемся обратно
     }
     $args = array('id' => $id, 'categoriesList' => $categoriesList, 'product' => $product);
     return self::render('update', $args);
 }
 public function actionUpdate($id)
 {
     self::checkAdmin();
     // get data for uper list
     $categoriesList = Category::getCategoriesListAdmin();
     $product = Product::getProductById($id);
     if (isset($_POST['submit'])) {
         $options['name'] = $_POST['name'];
         $options['category_id'] = $_POST['category_id'];
         $options['code'] = $_POST['code'];
         $options['price'] = $_POST['price'];
         $options['availability'] = $_POST['availability'];
         $options['brand'] = $_POST['brand'];
         $options['description'] = $_POST['description'];
         $options['is_new'] = $_POST['is_new'];
         $options['is_recommended'] = $_POST['is_recommended'];
         $options['status'] = $_POST['status'];
         if (Product::updateProductById($id, $options)) {
             if (is_uploaded_file($_FILES['image']['tmp_name'])) {
                 move_uploaded_file($_FILES['image']['tmp_name'], $_SERVER['DOCUMENT_ROOT'] . "/upload/images/products/{$id}.jpg");
             }
         }
         header('Location: /admin/product');
     }
     require_once ROOT . '/views/admin_product/update.php';
     return true;
 }
 public function actionUpdate($id)
 {
     $categories = Category::getCategoryList(false);
     if (!$categories) {
         $categories = array();
     }
     $product = Product::getProductById($id, false);
     if (!$product) {
         $product = array();
     }
     if (isset($_POST['submit'])) {
         $options['name'] = FunctionLibrary::clearStr($_POST['name']);
         $options['code'] = FunctionLibrary::clearStr($_POST['code']);
         $options['price'] = FunctionLibrary::clearStr($_POST['price']);
         $options['brand'] = FunctionLibrary::clearStr($_POST['brand']);
         $options['category_id'] = FunctionLibrary::clearStr($_POST['category_id']);
         $options['availability'] = FunctionLibrary::clearStr($_POST['availability']);
         $options['is_new'] = FunctionLibrary::clearStr($_POST['is_new']);
         $options['is_recommended'] = FunctionLibrary::clearStr($_POST['is_recommended']);
         $options['status'] = FunctionLibrary::clearStr($_POST['status']);
         $options['description'] = FunctionLibrary::clearStr($_POST['description']);
         $errors = array();
         if (!User::checkName($options['name'])) {
             $errors[] = 'Название товара должно быть больше 1 символа.';
         }
         if (empty($errors)) {
             if ($id) {
                 $result = Product::updateProductById($id, $options);
                 if (!$result) {
                     $message = 'Произошла ошибка при редактировании.';
                 } else {
                     if (!empty($_FILES['image']['tmp_name'])) {
                         $tmpName = $_FILES['image']['tmp_name'];
                         if (is_uploaded_file($tmpName)) {
                             /*
                                Следующие две строки для того
                                чтобы иметь возможность поменять
                                картинку no-image в базе
                                (а не то меняется только картинка в папке)
                             */
                             $imagePath = "/images/home/product{$id}.jpg";
                             $result = Product::putImageToDataBase($id, $imagePath);
                             if ($result) {
                                 $destination = $_SERVER['DOCUMENT_ROOT'] . "/template" . $imagePath;
                                 move_uploaded_file($tmpName, $destination);
                             }
                         }
                     }
                     FunctionLibrary::redirectTo('admin/product');
                 }
             }
         }
     }
     require_once ROOT . '/views/admin_product/update.php';
     return true;
 }
 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;
 }
 /**
  * Action для страницы "Редактировать товар"
  */
 public function actionUpdate($id)
 {
     // Проверка доступа
     self::checkAdmin();
     // Получаем список категорий для выпадающего списка
     $categoriesList = Category::getCategoriesListAdmin();
     // Получаем данные о конкретном заказе
     $product = Product::getProductById($id);
     // Обработка формы
     if (isset($_POST['submit'])) {
         // Если форма отправлена
         // Получаем данные из формы редактирования. При необходимости можно валидировать значения
         $options['name'] = $_POST['name'];
         $options['code'] = $_POST['code'];
         $options['price'] = $_POST['price'];
         $options['category_id'] = $_POST['category_id'];
         $options['brand'] = $_POST['brand'];
         $options['availability'] = $_POST['availability'];
         $options['description'] = $_POST['description'];
         $options['is_new'] = $_POST['is_new'];
         $options['is_recommended'] = $_POST['is_recommended'];
         $options['status'] = $_POST['status'];
         // Сохраняем изменения
         if (Product::updateProductById($id, $options)) {
             echo '<pre>';
             print_r($_FILES["image"]);
             echo '</pre>';
             // Если запись сохранена
             // Проверим, загружалось ли через форму изображение
             if (is_uploaded_file($_FILES["image"]["tmp_name"])) {
                 // Если загружалось, переместим его в нужную папке, дадим новое имя
                 var_dump(move_uploaded_file($_FILES["image"]["tmp_name"], $_SERVER['DOCUMENT_ROOT'] . "/upload/images/products/{$id}.jpg"));
             }
         }
         // Перенаправляем пользователя на страницу управлениями товарами
         header("Location: /admin/product");
     }
     // Подключаем вид
     require_once ROOT . '/views/admin_product/update.php';
     return true;
 }