public function mots_cles($action, $id, $vars) { switch ($action) { /**** GET ****/ case 'get': $vars['titrePage'] = 'Les mots clés'; // <h1> de la page $motCleDAO = new MotCleDAO(BDD::getInstancePDO()); $vars['motsCles'] = $motCleDAO->getAllForTable(); $this->vue->display('admin/motsCles_get_all.twig', $vars); exit; /**** EDIT ****/ /**** EDIT ****/ case 'edit': $vars['titrePage'] = 'Modification d\'un mot clé'; // <h1> de la page $motCleDAO = new MotCleDAO(BDD::getInstancePDO()); $vars['motCle'] = $motCleDAO->getOne($id); // Si un formulaire a été envoyé if (!empty($_POST)) { // Si le formulaire est valide au niveau faille CSRF if (!empty($_POST['jetonCSRF']) && $_POST['jetonCSRF'] == $_SESSION['jetonCSRF']) { // On essaye de faire les modifications $res = MotCle::edit($_POST, $id); if ($res->success) { $res->redirect = '/admin/mots_cles'; } echo json_encode($res); exit; } } $this->vue->display('admin/motCle_edit.twig', $vars); exit; /**** DROP ****/ /**** DROP ****/ case 'drop': if (!empty($_POST)) { // Si le formulaire est valide au niveau faille CSRF if (!empty($_POST['jetonCSRF']) && $_POST['jetonCSRF'] == $_SESSION['jetonCSRF']) { echo json_encode(MotCle::delete($id)); } } exit; default: $this->vue->display('404.twig', $vars); exit; } }