addQuestion(); if (strcmp($type, "BusinessClass\TextQuestion") == 0) { $this->goToQuestions(); } else { $categories = (new ModelAdmin())->getCategories(); $questionContent = $_POST['question']; global $rep, $views; require_once($rep.$views['possibleResponsesForm']); } } /** * Ajoute une possibilité de réponse à une question, on assigne également cette réponse * à des catégories. On propose ensuite à l'utilisateur de continuer l'ajout d'autres réponses. * * @return void * @throws Exception */ public function addResponse(): void { if (empty($_POST['idQuestion'] || empty($_POST['question']) || empty($_POST['type']))) { throw new InvalidArgumentException('$_POST parameters is missing'); } (new ModelAdmin())->addResponse(); $categories = (new ModelAdmin())->getCategories(); $idQuestion = $_POST['idQuestion']; $questionContent = $_POST['question']; $type = $_POST['type']; global $rep, $views; require_once($rep.$views['continue']); } /** * Permet de proposer à l'utiliser de continuer ou non à ajouter des possibilités de réponses à l'aide * de la fonction addResponse(). Sinon, il retourne à la page administration. * * @return void * @throws Exception */ public function continueResponse(): void { if (empty($_POST['choose'] || empty($_POST['idQuestion']) || empty($_POST['type']) || empty($_POST['question']))) { throw new InvalidArgumentException('$_POST parameters is missing'); } $choose = $_POST['choose']; if ($choose == "Oui") { $idQuestion = $_POST['idQuestion']; $categories = (new ModelAdmin())->getCategories(); $questionContent = $_POST['question']; $type = $_POST['type']; global $rep, $views; require_once($rep.$views['possibleResponsesForm']); } else { $this->goToQuestions(); } } /** * Permet de créer un nouveau formulaire avec un titre et une description. * * @return void * @throws Exception */ public function createForm(): void { (new ModelAdmin())->createForm(); } /** * Permet d'ajouter une catégorie (mot-clef) à notre application * * @return void * @throws Exception */ public function addKeyword(): void { (new ModelAdmin())->addKeyword(); $this->goToCategories(); } /** * Permet de naviguer jusqu'à la page de gestion des catégories * * @return void * @throws Exception */ public function goToCategories(): void { $categories = (new ModelAdmin())->getCategories(); global $rep, $views; require_once($rep.$views['categories']); } /** * Permet de naviguer jusqu'à la page de gestion des questions * * @return void * @throws Exception */ public function goToQuestions(): void { $questions = (new ModelAdmin())->getQuestions(); global $rep, $views; require_once($rep.$views['questions']); } /** * Permet de naviguer jusqu'à la page de gestion des réponses * * @return void * @throws Exception */ public function goToResponses(): void { $responsesCandidate = (new ModelAdmin())->getResponsesCandidate(); global $rep, $views; require_once($rep.$views['responses']); } public function goToAdministration(): void { global $rep, $views; require_once($rep.$views['admin']); } }