public function getItem() { if (!$this->item) { $manager = new ItemManager($this->database); $this->item = $manager->findById($this->id_item); } return $this->item; }
<?php if (isset($_GET['id'])) { $manager = new ItemManager($database); try { $item = $manager->findById($_GET['id']); } catch (Exception $e) { $errors[] = $e->getMessage(); } if ($item) { if (isset($_SESSION['order'])) { for ($i = 0; $i < count($_SESSION['order']); $i++) { if ($item->getId() == $_SESSION['order'][$i]['item']) { $quantity = $_SESSION['order'][$i]['quantity']; break; } else { $quantity = 0; } } } else { $quantity = $item->getQuantity(); } if (!isset($quantity)) { $quantity = 0; } $minValue = $quantity; $maxValue = $item->getStock() - $quantity; if ($maxValue > 0) { $defaultValue = 1; } else { $defaultValue = 0;
public function logCart(User $user) { if ($user) { if (isset($_SESSION['cart_status']) && $_SESSION['cart_status'] == 1) { if (isset($_SESSION['order'])) { $manager = new ItemManager($this->database); for ($i = 0; $i < count($_SESSION['order']); $i++) { $itemArray = explode(', ', $_SESSION['order'][$i]); // ____ 0 : $idItem \ 1 : $quantity ____ $item = $manager->findById($itemArray[0]); if ($item) { $quantity = $itemArray[1]; $add = $hatis->addToCart($item, $quantity); } else { throw new Exception("Article " . $i . " introuvable."); } } } } } else { throw new Exception("Erreur connexion utilisateur."); } }
<?php if (isset($currentUser)) { $cart = $currentUser->getCart()->getItemList(); } else { if (isset($_SESSION['order'])) { $manager = new ItemManager($database); for ($i = 0; $i < count($_SESSION['order']); $i++) { $item = $manager->findById($_SESSION['order'][$i]['item']); $quantity = $_SESSION['order'][$i]['quantity']; if ($quantity > 0) { require 'views/content/cart_items.phtml'; } } } }