Example #1
0
 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";
 }