/** * Permet d'obtenir une instance de la class <br> * Fait partie du design pattern <b>Singleton</b> * @return Une instance de ForumDAO * @since 1.0.0 */ public static function getInstance() { if (!isset(self::$instance)) { self::$instance = new ForumDAO(); } return self::$instance; }
private function bindAllForum() { $forumDAO = ForumDAO::getInstance(); foreach ($this->categories as $categorie) { $forums = $forumDAO->getAllByCateg($categorie->getId()); if (!$forums) { $forums = null; } $categorie->setForums($forums); $this->forumManager->bindAllTopic($forums); } }
<!-- William Tremblay & Nicholas-David Labarre Cours 420-306-LI TP3 --> <h2>Forum </h2> <p>Choix de forums :<br> <hr> <?php // crée dynamiquement une liste des forums disponibles avec boutons radio, s'il y a des // forums dans la base de donnée forum if (ForumDAO::getForums() != null) { echo '<ul>'; foreach (ForumDAO::getForums() as $forum) { $titre = $forum->getTitre(); $idForum = $forum->getId(); echo '<li><a href="index.php?module=membres&action=afficher_messages&id=' . $idForum . '">' . $titre . '</a><br></li>'; } echo '</ul>'; } else { // Sinon, on affiche un message indiquant qu'aucun forum n'existe. include CHEMIN_VUE . 'aucun_forums.php'; } // l'hyperlien pour créer un forum echo '<a id="nouveauForum" href="index.php?module=membres&action=creer_forum"> Nouveau forum</a><br><br>'; ?> <hr> </p>
private function __construct() { $this->forums = ForumDAO::getInstance()->getAll(); $this->bindAllTopic($this->forums); }
William Tremblay & Nicholas-David Labarre Cours 420-306-LI TP3 --> <?php // Vérification des droits d'accès de la page if (!utilisateur_est_connecte()) { // On affiche la page d'erreur comme quoi l'utilisateur doit être connecté pour voir la page include CHEMIN_VUE_GLOBALE . 'erreur_non_connecte.php'; } else { // On affiche le choix de forums. include CHEMIN_VUE . 'forum_choix.php'; // Si l'id est spécifié if (!empty($_GET['id'])) { // Si l'id du forum est valide if (in_array($_GET['id'], ForumDAO::getIdForums())) { $arrayMessages = ForumDAO::lireDBMessage($_GET['id']); echo '<h2>Bienvenue au forum ' . MessageDAO::getNomForum($_GET['id']) . ' - <a href="index.php?module=membres&action=creer_message&idParent=0&idForum=' . $_GET['id'] . '" class="repondre">Composer un message</a></h2>'; // Si le forum contient des messages, on les afficher if (!empty($arrayMessages)) { MessageDAO::afficherMessages($arrayMessages); } else { //Sinon, on affiche une page indiquant que le forum est vide include CHEMIN_VUE . 'forum_vide.php'; } } } else { // Sinon, on affiche un message expliquant que le forum est inexistant. include CHEMIN_VUE . 'erreur_forum_inexistant.php'; } }
TP3 --> <?php if (!utilisateur_est_connecte()) { // On affiche la page d'erreur comme quoi l'utilisateur doit être connecté pour voir la page include CHEMIN_VUE_GLOBALE . 'erreur_non_connecte.php'; } else { // On crée un objet forum $form_new_forum = new Form('formulaire_forum'); $form_new_forum->method('POST'); $form_new_forum->add('Text', 'nomForum'); $form_new_forum->add('Submit', 'submit')->value('Créer'); $form_new_forum->bound($_POST); $erreurs_creation = array(); // On s'assure qu'il est valide if ($form_new_forum->is_valid($_POST)) { // On s'ssure qu'il n'y a pas eu d'erreur en créant le forum if (empty($erreurs_creation)) { $nomForum = $form_new_forum->get_cleaned_data('nomForum'); include CHEMIN_LIB . 'ForumDAO.class.php'; // On crée le forum $nomForum = ForumDAO::creerForum($nomForum); // On affiche un message au membre. echo '<a href="index.php?module=membres&action=forum">Revenir à la page précédente</a><br>' . '<a href="index.php">Revenir à la page d\'accueil</a>'; } else { include CHEMIN_VUE . 'formulaire_forum.php'; } } else { include CHEMIN_VUE . 'formulaire_forum.php'; } }