goToHome(); break; case "goToHome": $this->goToHome(); break; case "goToAdmin": $this->goToAdmin(); break; case "goToPresentation": $this->goToPresentation(); break; case "goToEnigme": $this->goToEnigme(); break; case "goToTest": $this->goToTest(); break; case "goToChouette": $this->goToChouette(); break; case "goToCesarEncrypt": $this->goToCesarEncrypt(); break; case "goToCesarDecrypt": $this->goToCesarDecrypt(); break; case "goToChuckNorris": $this->goToChuckNorris(); break; case "goToHanoi": $this->goToHanoi(); break; case "goToTrianglePascal": $this->goToTrianglePascal(); break; case "goToDoubleElement": $this->goToDoubleElement(); break; case "goToNext": $this->goToNext(); break; case "goToQueue": $this->goToQueue(); break; case "goToAddEnigmeSolo": $this->goToAddEnigmeSolo(); break; case "logout": $this->logout(); break; case "addNewEnigmeSolo": $this->addNewEnigmeSolo(); break; case "goToEnigmeMultiManager": $this->goToEnigmeMultiManager(); break; case "goToEnigmeSoloManager": $this->goToEnigmeSoloManager(); break; case "goToDetailEnigme": $this->goToDetailEnigme(); break; case "goToModifEnigmeSolo": $this->goToModifEnigmeSolo(); break; case "goToAdminSolo": $this->goToAdminSolo(); break; case "goToSeeOrdre": $this->goToSeeOrdre(); break; case "goToModifOrdre": $this->goToModifOrdre(); break; case "editEnigme": $this->editEnigme(); break; case "deleteEnigme": $this->deleteEnigme(); break; case "modifOrdre": $this->modifOrdre(); break; default: $error = "Action non valide"; require($rep . $vues['erreur']); break; } } catch (PDOException $e) { $error = $e->getMessage(); require($rep . $vues['erreur']); } catch (Exception $e2) { $error = $e2->getMessage(); require($rep . $vues['erreur']); } } public function goToAdmin() { try { global $rep, $vues; require($rep . $vues['admin']); } catch (Exception $e) { $error = $e->getMessage(); require($rep . $vues['erreur']); } } public function goToAddEnigmeSolo() { try { global $rep, $vues; require($rep . $vues['addEnigmeSolo']); } catch (Exception $e) { $error = $e->getMessage(); require($rep . $vues['erreur']); } } public function goToEnigmeMultiManager() { try { global $rep, $vues; require($rep . $vues['enigmeMultiManager']); } catch (Exception $e) { $error = $e->getMessage(); require($rep . $vues['erreur']); } } public function goToEnigmeSoloManager() { try { global $rep, $vues; $model = new AdminModel(); $lesEnigmes = $model->getEnigmesSolo(); require($rep . $vues['enigmeSoloManager']); } catch (Exception $e) { $error = $e->getMessage(); require($rep . $vues['erreur']); } } public function goToDetailEnigme() { try { global $rep, $vues; $model = new AdminModel(); $enigme = $model->getEnigmeById($_GET['id']); require($rep . $vues['detailEnigme']); } catch (Exception $e) { $error = $e->getMessage(); require($rep . $vues['erreur']); } } public function goToModifEnigmeSolo() { try { global $rep, $vues; $model = new AdminModel(); $enigme = $model->getEnigmeById($_GET['id']); require($rep . $vues['modifEnigmeSolo']); } catch (Exception $e) { $error = $e->getMessage(); require($rep . $vues['erreur']); } } public function goToAdminSolo() { try { global $rep, $vues; require($rep . $vues['adminSolo']); } catch (Exception $e) { $error = $e->getMessage(); require($rep . $vues['erreur']); } } public function goToSeeOrdre() { try { global $rep, $vues; $model = new AdminModel(); $lesEnigmes = $model->getEnigmesSolo(); require($rep . $vues['seeOrdre']); } catch (Exception $e) { $error = $e->getMessage(); require($rep . $vues['erreur']); } } public function goToModifOrdre() { try { global $rep, $vues; $model = new AdminModel(); $lesEnigmes = $model->getEnigmesSolo(); require($rep . $vues['modifOrdre']); } catch (Exception $e) { $error = $e->getMessage(); require($rep . $vues['erreur']); } } public function editEnigme() { try{ global $rep, $vues; $model = new AdminModel(); $id = $_GET['id']; $nom = $_POST['nom']; $enonce = $_POST['enigme']; $aide = $_POST['aide']; $rappel = $_POST['rappel']; $exemple = $_POST['exemple']; $test = $_POST['test']; $solution = $_POST['solution']; $prompt = $_POST['prompt']; $enigme = $model->editEnigme($id, $nom, $enonce, $aide, $rappel, $exemple, $test, $solution, $prompt); echo ''; require($rep . $vues['detailEnigme']); } catch (Exception $e) { $error = $e->getMessage(); require($rep . $vues['erreur']); } } public function deleteEnigme(){ try{ global $rep, $vues; $model = new AdminModel(); $id = $_GET['id']; $model->deleteEnigme($id); echo ''; $this->goToEnigmeSoloManager(); } catch (Exception $e) { $error = $e->getMessage(); require($rep . $vues['erreur']); } } public function modifOrdre(){ try{ global $rep, $vues; $model = new AdminModel(); $lesOrdres = []; $lesEnigmes=$model->getEnigmesSolo(); foreach ($lesEnigmes as $enigme) { $lesOrdres[] = array($enigme->getIdEnigme(),(int)$_POST['ordre'.$enigme->getIdEnigme()]); } $model->modifOrdre($lesOrdres); echo ''; $this->goToSeeOrdre(); } catch (Exception $e) { $error = $e->getMessage(); require($rep . $vues['erreur']); } } public function addNewEnigmeSolo() { try { global $rep, $vues; $model = new AdminModel(); $nom = $_POST['nom']; $enonce = $_POST['enigme']; $aide = $_POST['aide']; $rappel = $_POST['rappel']; $exemple = $_POST['exemple']; $test = $_POST['test']; $solution = $_POST['solution']; $prompt = $_POST['prompt']; if (empty($nom) || empty($enonce) || empty($test) || empty($solution)) { throw new Exception("Les champs nom, enigme, test et solution doivent être remplis"); } if (empty($aide)) { $aide = "Il n'y a pas d'aide pour cette énigme"; } if (empty($rappel)) { $rappel = "Il n'y a pas de rappel pour cette énigme"; } if (empty($exemple)) { $exemple = "Il n'y a pas d'exemple pour cette énigme"; } $enigme = $model->addNewEnigmeSolo($nom, $enonce, $aide, $rappel, $exemple, $test, $solution, $prompt); echo ''; require($rep . $vues['adminSolo']); } catch (Exception $e) { $error = $e->getMessage(); require($rep . $vues['erreur']); } } }