/** * @param Commande $commande * @return Collection */ public static function getLivresbyCommande(Commande $commande) { $LesLivres = new Collection(); try { $conn = Main::BDDConnexionPDO(); $req = $conn->prepare("SELECT * FROM Quantite\n\t\t\t INNER JOIN Commande ON Quantite.NoCommande = Commande.NumCommande\n\t\t\t WHERE NoCommande = ?"); $req->execute(array($commande->getNumCommande())); $req = $req->fetchAll(); foreach ($req as $unLivre) { $livre = MLivre::getUnLivre($unLivre['NoLivres']); $commande = MPanier::getUneCommande($unLivre['NoCommande']); $quantite = new Quantite($livre, $commande, $unLivre['Quantite']); $LesLivres->ajouter($quantite); } return $LesLivres; } catch (\Exception $e) { Main::setFlashMessage($e->getMessage(), 'error'); } }
break; case 'diminuerProduit': $_SESSION['Panier']->diminuerQuantiteProduit($_GET['ref'], 1); if ($_SESSION['Panier']->getNbProd() == 0) { unset($_SESSION['Panier']); } else { header('Location:?uc=Panier'); } break; case 'validerCommande': try { if (isset($_POST['nom']) && !empty($_POST['nom']) && !empty($_POST['annee']) && !empty($_POST['mois']) && !empty($_POST['carte']) && !empty($_POST['cvc'])) { $user = MCompte::getUnUser($_SESSION['mail']); $commande = new Commande(1, $user, date('Y-m-d')); $idCommande = MPanier::AjouterCommande($commande); $uneCommande = MPanier::getUneCommande($idCommande); foreach ($_SESSION['Panier']->getProduitsPanier() as $livre) { $quantite = new Quantite($livre, $uneCommande, $livre->getQte()); MPanier::AjouterCommandeProduit($quantite); unset($_SESSION['Panier']); Main::setFlashMessage('Votre commande a été pris en compte.', 'valid'); header('Location:?uc=Accueil'); } } else { require_once ROOT . 'Views/Panier/vue_commande.php'; } } catch (\Exception $e) { Main::setFlashMessage($e->getMessage(), 'error'); } break; }
} if (!empty($_POST['adresse'])) { $user->setAdresse($_POST['adresse']); $_SESSION['Adresse'] = $_POST['adresse']; } MCompte::setUser($user); Main::setFlashMessage('Les informations du compte ont été mis à jour.', 'valid'); header("Location:?uc=MonCompte"); } else { Main::setFlashMessage('Veuillez remplir au moins un champ à modifier', 'error'); } } catch (Exception $e) { Main::setFlashMessage('Une erreur est survenue lors de la modification de votre compte', 'error'); } break; case 'HistoriqueCommande': try { $user = MConnexion::getUnUserbyId($_SESSION['user']); $tabCommandes = MPanier::getLesCommandesbyUser($user); if (isset($_POST['Commande'])) { $uneCommande = MPanier::getUneCommande($_POST['Commande']); $tabLivres = MPanier::getLivresbyCommande($uneCommande); } require_once ROOT . 'Views/Espace Compte/vue_historiquecommande.php'; } catch (Exception $e) { Main::setFlashMessage('Une erreur est survenue lors de l\'affichage d\'une commande', 'error'); } break; default: header("Location:?uc=Accueil"); }