public function index() { if (!isset($_SESSION['userId']) && $_SESSION['editor'] != true && $_SESSION['admin'] != true) { header('Location: /php_project/application/public/'); exit; } $categories = new \Models\Category(); $allCategories = $categories->find(); $products = new \Models\Product(); $allProducts = $products->find(); $promotionDb = new \Models\Promotion(); $allPromos = $promotionDb->find(); $data = array(); $data[] = $allCategories; $data[] = $allProducts; $data[] = $allPromos; $this->view->appendToLayout('body', 'editorIndex'); $this->view->display('layouts.default', $data); }
public function promo() { if (!isset($_SESSION['userId']) && $_SESSION['editor'] != true && $_SESSION['admin'] != true) { header('Location: /php_project/application/public/'); exit; } $promoDb = new \Models\Promotion(); $product_id = $this->input->get(0); $productDb = new \Models\Product(); $product = $productDb->get('product_id=' . $product_id)[0]; if (isset($_POST['name'])) { $updateProduct = array(); $promoName = $_POST['name']; $promotion = $promoDb->get('promotion_name = "' . $promoName . '"')[0]; if ($product['promotion_id'] == null) { $updateProduct['promotion_id'] = $promotion['promotion_id']; $updateProduct['product_id'] = $product['product_id']; $productDb->update('product', $updateProduct); header('Location: /php_project/application/public/editor/index'); exit; } else { $oldPromo = $promoDb->get('promotion_id = ' . $product['promotion_id'])[0]; if ($oldPromo['discount'] >= $promotion['discount']) { header('Location: /php_project/application/public/editor/index'); exit; } else { $updateProduct['promotion_id'] = $promotion['promotion_id']; $updateProduct['product_id'] = $product['product_id']; $productDb->update('product', $updateProduct); header('Location: /php_project/application/public/editor/index'); exit; } } } if (!is_numeric($product_id) || !$product) { header('Location: /php_project/application/public/'); exit; } $promos = $promoDb->find(); $this->view->appendToLayout('body', 'addPromoProduct'); $this->view->display('layouts.default', $promos); }