public function details($id) { $product = Product::findProduct($id); $product_images = Product::find($id)->images()->getResults(); return View::make('details', array('product' => $product, 'images' => $product_images)); }
public function showProduct() { $msg = ""; if (filter_has_var(INPUT_GET, 'id')) { $idprod = $_GET['id']; } $product = new Product(); $resultatProduct = $product->findProduct($idprod); include_once "controllers/comments.php"; $comm = new Comments(); if ($product->access_ModelMember_userAdmin() || $product->access_ModelMember_sessionExists()) { $id_membre = $_SESSION['user']['id_membre']; $id_salle = $resultatProduct['id_salle']; $comm->addComment($id_membre, $id_salle); } $resultatRoom = $product->access_ModelRoom_FindOne($resultatProduct['id_salle']); $resultatPromo = $product->access_ModelPromotion_FindOne($resultatProduct['id_promo']); $dateArrivee = $product->changeDatetoFrenchFormat($resultatProduct['date_arrivee']); $dateDepart = $product->changeDatetoFrenchFormat($resultatProduct['date_depart']); $msg .= '<div class="row rowColor">'; $msg .= '<div class="col-sm-10 rowColor2">'; $msg .= '<div class="blocImage">'; $msg .= '<img class="img-responsive" src="' . $resultatRoom['photo'] . '" width= 600/>'; $msg .= '</div>'; $msg .= '<div class="infos ">'; $msg .= '<p class="detailTitre">' . $resultatRoom['titre'] . '</p>'; $msg .= '<p class="detailCat">Catégorie: ' . $resultatRoom['categorie'] . '</p>'; $msg .= '<p class="detailCat">Max: ' . $resultatRoom['capacite'] . ' personnes</p>'; $msg .= '<p class="detailAdresse">' . $resultatRoom['adresse'] . '</p>'; $msg .= '<p class="detailAdresse">' . $resultatRoom['cp'] . ' ' . $resultatRoom['ville'] . '</p>'; $msg .= '<p class="detailDate">Date d\'arrivée: ' . $dateArrivee . '</p>'; $msg .= '<p class="detailDate">Date de départ: ' . $dateDepart . '</p>'; $msg .= '<p class="detailPrix">' . $resultatProduct['prix'] . ' €</p>'; // SI LE CODE PROMO EXISTE if (isset($resultatPromo['code_promo']) && $resultatPromo['code_promo'] != '') { $msg .= '<p class="detailPromo">*Code promo: ' . $resultatPromo['code_promo'] . ' pour bénéficier d\'une réduction de ' . $resultatPromo['reduction'] . ' €</p>'; } $msg .= '<div class="clearfix"></div>'; $msg .= '</div>'; $msg .= '</div>'; $msg .= '<div class="col-sm-2 optionsButton">'; if ($product->access_ModelMember_userAdmin() || $product->access_ModelMember_sessionExists()) { $msg .= '<a class="btn btn-success" href="index.php?controller=orders&action=addToCart&id=' . $resultatProduct['id_produit'] . '" title="Ajouter">Ajouter au panier</a>'; } else { $msg .= '<a class="btn btn-success btnDetail" href="index.php?controller=members&action=connect" title="Se connecter">Se connecter</a>'; $msg .= "<br/>"; $msg .= '<a class="btn btn-success btnDetail" href="index.php?controller=members&action=add_member" title="Inscription">Inscription</a>'; } $msg .= '</div>'; $msg .= '</div>'; // COMMENTAIRES $msg .= '<div class="row row2">'; $msg .= '<div class="col-sm-4 detailAvis">'; // AFFICHAGE DES AVIS SUR LA SALLE $comments = $product->access_ModelComment_roomComments($resultatProduct['id_salle']); if (isset($comments) && !empty($comments)) { $msg .= '<p class="avisTitre">Avis sur cette salle: </p>'; foreach ($comments as $comm) { $member = $product->access_ModelMember_retrieveMember($comm['id_membre']); $msg .= '<div class="commentaire">'; $msg .= '<p class="avisMembre">Par ' . $member['prenom'] . ' ' . $member['nom'] . ' le ' . $comm['date'] . '</p>'; $msg .= '<p class="avisTexte">' . $comm['commentaire'] . '</p>'; $msg .= '<p class="avisNote">Note: ' . $comm['note'] . '/10 </p>'; $msg .= '</div>'; } } else { $msg .= '<p>Cette salle n\'a aucun commentaires pour le moment.</p>'; } $msg .= '</div>'; $msg .= '<div class="col-sm-8">'; $msg .= '<div class="row rowDesc">'; $msg .= '<p>' . $resultatRoom['description'] . '</p>'; $msg .= '</div>'; $msg .= '<div class="row rowMap">'; $msg .= '<input type="hidden" id="address" value="' . $resultatRoom['adresse'] . ' ' . $resultatRoom['cp'] . ' ' . $resultatRoom['ville'] . '"/>'; $msg .= '<div id="map-canvas" class="pull-right"></div>'; $msg .= '</div>'; $msg .= '</div>'; $msg .= '</div>'; $msg .= '<div class="row rowAvisForm">'; // Vérification si l'utilisateur connecté a déjà posté un avis sur cette salle if ($product->access_ModelMember_userAdmin() || $product->access_ModelMember_sessionExists()) { $verif = $product->checkMemberComments($_SESSION['user']['id_membre'], $resultatProduct['id_salle']); } if (empty($verif) || $verif == NULL) { //Affichage du formulaire pour entrer un commentaire if ($product->access_ModelMember_userAdmin() || $product->access_ModelMember_sessionExists()) { $msg .= '<form method="post" class="form-horizontal">'; $msg .= '<div class="form-group">'; $msg .= '<label class="label-control col-sm-4" for="comment">Ajouter un commentaire</label>'; $msg .= '<div class="col-sm-8">'; $msg .= '<textarea name="comment" id="comment">Votre commentaire...</textarea>'; $msg .= '</div>'; $msg .= '</div>'; $msg .= '<div class="form-group">'; $msg .= '<label class="label-control col-sm-4" for="note">Note/10</label>'; $msg .= '<div class="col-sm-8">'; $msg .= '<select class="form-control" name="note" id="note">'; $msg .= '<option value="0">0</option>'; $msg .= '<option value="1">1</option>'; $msg .= '<option value="2">2</option>'; $msg .= '<option value="3">3</option>'; $msg .= '<option value="4">4</option>'; $msg .= '<option value="5" selected>5</option>'; $msg .= '<option value="6">6</option>'; $msg .= '<option value="7">7</option>'; $msg .= '<option value="8">8</option>'; $msg .= '<option value="9">9</option>'; $msg .= '<option value="10">10</option>'; $msg .= '</select><br/>'; $msg .= '</div>'; $msg .= '</div>'; $msg .= '<div class="form-group">'; $msg .= '<div class="col-sm-12">'; $msg .= '<input class="btn btn-success pull-right" type="submit" name="enregistrer" value="Enregistrer">'; $msg .= '</div>'; $msg .= '</div>'; $msg .= '</form>'; } else { $msg .= 'Vous devez vous connecter pour pouvoir poster un commentaire'; } } else { $msg .= '<div class="panel panel-default">'; $msg .= '<div class="panel-body">'; $msg .= 'Merci pour votre commentaire.'; $msg .= '</div>'; $msg .= '</div>'; } $msg .= '</div>'; // AUTRES SUGGESTIONS // Récupérer localisation de la salle et date du produit // var_dump($resultatRoom['ville']); // var_dump($resultatProduct['date_arrivee']); // Recupérer les produits dont la ville est identique et la date d'arrivée >= à celle du produit déjà choisi $rooms = $product->access_ModelRoom_findByCity($resultatRoom['ville']); $suggest = $product->findSuggestions($resultatProduct['date_arrivee']); // var_dump($rooms); // var_dump($suggest); $msg .= '<div class="row">'; $msg .= '<div id="suggestTitle">'; $msg .= '<h3>Autres suggestions</h3>'; $msg .= '</div>'; $msg .= '<div class="owl-carousel">'; foreach ($suggest as $suggestion) { foreach ($rooms as $room) { if ($suggestion['id_salle'] == $room['id_salle'] && $suggestion['id_produit'] != $resultatProduct['id_produit']) { $date = new DateTime($suggestion['date_arrivee']); $suggestion['date_arrivee'] = $date->format('d-m-Y'); $date = new DateTime($suggestion['date_depart']); $suggestion['date_depart'] = $date->format('d-m-Y'); $msg .= '<div>'; $msg .= '<a href="index.php?controller=products&action=showProduct&id=' . $suggestion['id_produit'] . '"><img src="' . $room['photo'] . '" width=360 /></a><br/>'; $msg .= $room['titre'] . '<br/>'; $msg .= $suggestion['prix'] . '€ Pour ' . $room['capacite'] . ' personnes<br/>'; $msg .= 'Du ' . $suggestion['date_arrivee'] . ' au ' . $suggestion['date_depart'] . '<br/>'; $msg .= $room['ville'] . '<br/>'; $msg .= '</div>'; } } } $msg .= '</div>'; $msg .= '</div>'; include "views/products/showProduct.php"; }