From 7f85096c7b9953900ff26f0de65ecd3426d47807 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Verdoire?= Date: Mon, 20 Nov 2023 14:49:31 +0100 Subject: [PATCH] resol bug --- php/src/controleur/AdminControleur.php | 30 +++++++++++++-- php/src/controleur/FrontControleur.php | 32 ++++++++++++---- php/src/controleur/MembreControleur.php | 40 +++++++++++++++----- php/src/controleur/UtilisateurControleur.php | 39 +++++-------------- php/src/modele/MembreModele.php | 2 +- php/src/modele/UtilisateurModele.php | 7 +++- php/templates/OffersList.html | 2 +- php/templates/creerOffre.html | 2 +- php/templates/evenement.html | 2 +- php/templates/menu.html | 2 +- 10 files changed, 101 insertions(+), 57 deletions(-) diff --git a/php/src/controleur/AdminControleur.php b/php/src/controleur/AdminControleur.php index 5367e4f..5008df0 100755 --- a/php/src/controleur/AdminControleur.php +++ b/php/src/controleur/AdminControleur.php @@ -1,6 +1,9 @@ ajouterEvenement($_POST["titre"], $_POST["description"], $_POST["date"], $_POST["nbPlaceMax"], $img[1]); + + $this->listerEvenement(); + } else { + $dVueErreur[] ="Erreur lors de la création de l'évènement"; + echo $twig->render("erreur.html",['dVueErreur' => $dVueErreur]); + } + } else { + echo $twig->render('creerEvenement.html', []); + } } - protected function supprimerEvenement() + public function supprimerEvenement(?array $params) { - //TODO + $mdl = new UtilisateurModele(); + $mdl->deleteEvenement($params["id"]); + + $this->listerEvenement(); } protected function supprimerOffre() diff --git a/php/src/controleur/FrontControleur.php b/php/src/controleur/FrontControleur.php index 1634fdc..7cdf0a9 100755 --- a/php/src/controleur/FrontControleur.php +++ b/php/src/controleur/FrontControleur.php @@ -4,11 +4,7 @@ namespace App\controleur; use App\router\AltoRouter; -use App\metier\Alumni; - -use App\controleur\UtilisateurControleur; -use App\controleur\MembreControleur; -use App\controleur\AdminControleur; +use App\controleur\Error; class FrontControleur { @@ -72,12 +68,28 @@ class FrontControleur //var_dump($match); + $namespace = 'App\\controleur\\'; + + echo "action: ".$action; + try { if ($controller == "MembreControleur") { - if ($_SESSION["utilisateur"]->getRole() != "Admin" || $_SESSION["utilisateur"]->getRole() != "Membre") { + + echo " on est passés ici"; + echo "role ".$_SESSION["utilisateur"]->getRole(); + + if ($_SESSION["utilisateur"]->getRole() != "Membre") { echo $twig->render("connection.html",['msg' => 'Vous devez vous connecter pour effectuer cette action']); } + else{ + $controller = "MembreControleur"; + $controller = $namespace . $controller; + echo "controller : ".$controller; + $controller = new $controller(); + + + } } if ($controller == "AdminControleur") { @@ -89,13 +101,17 @@ class FrontControleur echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]); return; } - } else { - $namespace = 'App\\Controleur\\'; + } + if($controller == "UtilisateurControleur") + { + + $controller = $namespace . $controller; $controller = new $controller(); } if (is_callable(array($controller, $action))) { + echo "action callable"; call_user_func(array($controller, $action), $match['params']); } else { diff --git a/php/src/controleur/MembreControleur.php b/php/src/controleur/MembreControleur.php index 48176c1..433fed5 100755 --- a/php/src/controleur/MembreControleur.php +++ b/php/src/controleur/MembreControleur.php @@ -3,6 +3,7 @@ namespace App\controleur; use App\config\Validation; use App\gateway\ImageSaver; +use App\modele\MembreModele; class MembreControleur extends UtilisateurControleur { @@ -10,15 +11,7 @@ class MembreControleur extends UtilisateurControleur { } - public function deconnexion() - { - session_destroy(); - echo "on est passes ici"; - //header('Location: index.php?action=accueil'); - global $twig; - $twig->render('accueil.html',[]); - exit(); - } + public function createOfferForm() { @@ -94,6 +87,35 @@ class MembreControleur extends UtilisateurControleur } } + public function creerEvenement() + { + global $twig; + + if (isset($_FILES["image"])) { + $img = ImageSaver::SaveImage('image'); + + if (!Validation::validerEvenement($_POST["titre"], $_POST["description"], $_POST["date"], $_POST["nbPlaceMax"], $img[1])) { + $mdl = new UtilisateurModele(); + $mdl->ajouterEvenement($_POST["titre"], $_POST["description"], $_POST["date"], $_POST["nbPlaceMax"], $img[1]); + + $this->listerEvenement(); + } else { + $dVueErreur[] ="Erreur lors de la création de l'évènement"; + echo $twig->render("erreur.html",['dVueErreur' => $dVueErreur]); + } + } else { + echo $twig->render('creerEvenement.html', []); + } + } + + public function supprimerEvenement(?array $params) + { + $mdl = new UtilisateurModele(); + $mdl->deleteEvenement($params["id"]); + + $this->listerEvenement(); + } + protected function proposerOffre() { //TODO diff --git a/php/src/controleur/UtilisateurControleur.php b/php/src/controleur/UtilisateurControleur.php index 1d14aef..e38f554 100755 --- a/php/src/controleur/UtilisateurControleur.php +++ b/php/src/controleur/UtilisateurControleur.php @@ -213,35 +213,6 @@ class UtilisateurControleur echo $twig->render('evenement.html', ['evenements' => $evenements]); } - - public function creerEvenement() - { - global $twig; - - if (isset($_FILES["image"])) { - $img = ImageSaver::SaveImage('image'); - - if (!Validation::validerEvenement($_POST["titre"], $_POST["description"], $_POST["date"], $_POST["nbPlaceMax"], $img[1])) { - $mdl = new UtilisateurModele(); - $mdl->ajouterEvenement($_POST["titre"], $_POST["description"], $_POST["date"], $_POST["nbPlaceMax"], $img[1]); - - $this->listerEvenement(); - } else { - $dVueErreur[] ="Erreur lors de la création de l'évènement"; - echo $twig->render("erreur.html",['dVueErreur' => $dVueErreur]); - } - } else { - echo $twig->render('creerEvenement.html', []); - } - } - - public function supprimerEvenement(?array $params) - { - $mdl = new UtilisateurModele(); - $mdl->deleteEvenement($params["id"]); - - $this->listerEvenement(); - } public function avoirDetailEvenement(?array $params) { @@ -302,4 +273,14 @@ class UtilisateurControleur echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]); } } + + public function deconnexion() + { + session_destroy(); + + header('Location: accueil'); + // global $twig; + // $twig->render('accueil.html',[]); + exit(); + } } \ No newline at end of file diff --git a/php/src/modele/MembreModele.php b/php/src/modele/MembreModele.php index 97231c7..57c73d8 100755 --- a/php/src/modele/MembreModele.php +++ b/php/src/modele/MembreModele.php @@ -92,7 +92,7 @@ class MembreModele extends UtilisateurModele // à la place de NULL passer id utilisateur créateur offre $offre = new Offre($this->offreGw->getNewId(), - new Alumni("test.mail@icloud.fr","password","admin","prenom","nom"), + new Alumni($_SESSION['utilisateur']->getId(),"test.mail@icloud.fr","password","admin","prenom","nom"), $nom, $desc, $img, diff --git a/php/src/modele/UtilisateurModele.php b/php/src/modele/UtilisateurModele.php index 022f7f2..3d6adaf 100755 --- a/php/src/modele/UtilisateurModele.php +++ b/php/src/modele/UtilisateurModele.php @@ -231,10 +231,13 @@ class UtilisateurModele foreach ($res as $row) { $resal = $alGw->ObtenirById($row['offreur']); - + $profilGw = new ProfilGateway(new Connection(DB_HOST,DB_USER,DB_PASS)); - $resProfl = $profilGw->getProfilById($row['offreur']); + $resProfl = $profilGw->getProfilById($resal[0]['id']); + + echo + var_dump($resal); $alumni = new Alumni(intval($resal[0]['id']),$resal[0]['mail'],$resal[0]['mdp'],$resal[0]['role'],$resProfl[0]['nom'],$resProfl[0]["prenom"]); diff --git a/php/templates/OffersList.html b/php/templates/OffersList.html index 2cf74e8..8a5c26d 100644 --- a/php/templates/OffersList.html +++ b/php/templates/OffersList.html @@ -16,7 +16,7 @@
{% if role == 'Membre' or role == 'Admin' %} - Publier une offre + Publier une offre {% endif %}
diff --git a/php/templates/creerOffre.html b/php/templates/creerOffre.html index 54d0710..3f49216 100644 --- a/php/templates/creerOffre.html +++ b/php/templates/creerOffre.html @@ -15,7 +15,7 @@

Publier Une Offre

-
+ {% if tabError is defined %} {% for error in tabError %} diff --git a/php/templates/evenement.html b/php/templates/evenement.html index addb02d..e8bf097 100644 --- a/php/templates/evenement.html +++ b/php/templates/evenement.html @@ -22,7 +22,7 @@

Liste des Événements

- Publier événement + Publier événement