enigme_gateway = new EnigmeGateway(); $this->partie_gateway = new PartieGateway(); $this->utilisateur_gateway = new UtilisateurGateway(); $this->nettoyage = new Nettoyage(); $this->validation = new Validation(); } catch (Exception $e) { $error = $e->getMessage(); require($rep . $view['erreur']); } } public function addToQueue() { echo '1'; if ($this->utilisateur_gateway->isAlreadyInqueue($_SESSION['utilisateur'])) { return; } echo '2'; if (!$this->partie_gateway->partieInQueueExists()) { echo '3'; $tabEnigme = $this->enigme_gateway->findMultiEnigma(); $idNewPartie = $this->partie_gateway->findPartieMaxId(); $partie = $this->partie_gateway->creerPartieMulti($idNewPartie, $tabEnigme); } else { echo '4'; $idPartieInQueue = $this->partie_gateway->findPartieInQueue(); echo '5'; $tabEnigme = $this->enigme_gateway->findEnigmaFromPartie($idPartieInQueue); echo '6'; $partie = $this->partie_gateway->rejoindrePartieMulti($idPartieInQueue, $tabEnigme); echo '7'; } echo '8'; $this->utilisateur_gateway->addToQueue($_SESSION['utilisateur'], $partie); $userGroup = $this->utilisateur_gateway->findUsersInQueue(); //trigger_event('add_to_queue',$userGroup); } public function AddUserToQueueEvent() { $userGroup = $this->utilisateur_gateway->findUsersInQueue(); if ($userGroup . count() >= 4) { $this->utilisateur_gateway->launchGame(); } } public function logout() { session_unset(); session_destroy(); $_SESSION = array(); $_SESSION['role'] = 'visitor'; header('Location: index.php'); } }