From b5d91b5ac36bff1f0af7308c166d58ce64f541b5 Mon Sep 17 00:00:00 2001
From: tleodev
Date: Mon, 20 Nov 2023 16:13:33 +0100
Subject: [PATCH 1/5] fix session variables
---
php/src/controleur/FrontControleur.php | 31 ++++++++++----------
php/src/controleur/ModerateurControleur.php | 21 -------------
php/src/controleur/UtilisateurControleur.php | 5 +++-
3 files changed, 19 insertions(+), 38 deletions(-)
delete mode 100755 php/src/controleur/ModerateurControleur.php
diff --git a/php/src/controleur/FrontControleur.php b/php/src/controleur/FrontControleur.php
index ee0faad..e928df4 100755
--- a/php/src/controleur/FrontControleur.php
+++ b/php/src/controleur/FrontControleur.php
@@ -12,14 +12,19 @@ class FrontControleur
{
global $twig;
session_start();
- //var_dump($_SESSION['utilisateur']);
-
- if ($_SESSION['utilisateur'] != NULL) {
- // echo on y passe
- $twig->addGlobal('nom', $_SESSION['utilisateur']->getNom());
- $twig->addGlobal('prenom', $_SESSION['utilisateur']->getPrenom());
- $twig->addGlobal('role', $_SESSION['utilisateur']->getRole());
- $twig->addGlobal('id', $_SESSION['utilisateur']->getId());
+
+ if(!isset($_SESSION['nom']) && !isset($_SESSION['prenom']) && !isset($_SESSION['role']) && !isset($_SESSION['id']))
+ {
+ $_SESSION['nom'] = NULL;
+ $_SESSION['prenom'] = NULL;
+ $_SESSION['role'] = "guest";
+ $_SESSION['id'] = NULL;
+ }
+ else{
+ $twig->addGlobal('nom', $_SESSION['nom']);
+ $twig->addGlobal('prenom', $_SESSION['prenom']);
+ $twig->addGlobal('role', $_SESSION['role']);
+ $twig->addGlobal('id', $_SESSION['id']);
}
@@ -65,11 +70,7 @@ class FrontControleur
try {
if ($controller == "MembreControleur") {
-
- echo " on est passés ici";
- echo "role ".$_SESSION["utilisateur"]->getRole();
-
- if ($_SESSION["utilisateur"]->getRole() != "Membre") {
+ if ($_SESSION["role"] != "Membre" && $_SESSION["role"] != "Admin") {
echo $twig->render("connection.html",['msg' => 'Vous devez vous connecter pour effectuer cette action']);
}
@@ -79,13 +80,11 @@ class FrontControleur
echo "controller : ".$controller;
$controller = new $controller();
-
}
}
if ($controller == "AdminControleur") {
- $Alumni = $_SESSION["utilisateur"];
- if ($Alumni->getRole() != "Admin") {
+ if ($_SESSION["role"] != "Admin") {
$dVueErreur = ["Erreur : Vous n'avez pas les privileges pour cette action"];
global $twig;
diff --git a/php/src/controleur/ModerateurControleur.php b/php/src/controleur/ModerateurControleur.php
deleted file mode 100755
index 8b25478..0000000
--- a/php/src/controleur/ModerateurControleur.php
+++ /dev/null
@@ -1,21 +0,0 @@
-connection($email, $motDePasse);
if ($utilisateur instanceof Alumni) {
- $_SESSION['utilisateur'] = $utilisateur;
+ $_SESSION['nom'] = $utilisateur->getNom();
+ $_SESSION['prenom'] = $utilisateur->getPrenom();
+ $_SESSION['role'] = $utilisateur->getRole();
+ $_SESSION['id'] = $utilisateur->getId();
// echo $twig->render('accueil.html',[]);
header('Location: accueil');
From ce5fb022b9f29a548182909440bb3ceb5aab37a2 Mon Sep 17 00:00:00 2001
From: tleodev
Date: Mon, 20 Nov 2023 16:21:03 +0100
Subject: [PATCH 2/5] remplacement du header de redirection par un twig->render
---
php/src/controleur/UtilisateurControleur.php | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/php/src/controleur/UtilisateurControleur.php b/php/src/controleur/UtilisateurControleur.php
index bd71b97..7aa39f6 100755
--- a/php/src/controleur/UtilisateurControleur.php
+++ b/php/src/controleur/UtilisateurControleur.php
@@ -32,8 +32,12 @@ class UtilisateurControleur
$_SESSION['role'] = $utilisateur->getRole();
$_SESSION['id'] = $utilisateur->getId();
- // echo $twig->render('accueil.html',[]);
- header('Location: accueil');
+ echo $twig->render('accueil.html',[
+ 'nom' => $_SESSION['nom'],
+ 'prenom' => $_SESSION['prenom'],
+ 'role' => $_SESSION['role'],
+ 'id' => $_SESSION['id'
+ ]]);
return;
} else {
From a2f805cba272259ca15c552203a0610b83d6960a Mon Sep 17 00:00:00 2001
From: tleodev
Date: Mon, 20 Nov 2023 16:29:49 +0100
Subject: [PATCH 3/5] Modo controleur (my bad)
---
php/src/controleur/ModerateurControleur.php | 21 +++++++++++++++++++++
php/templates/profil.html | 2 +-
2 files changed, 22 insertions(+), 1 deletion(-)
create mode 100644 php/src/controleur/ModerateurControleur.php
diff --git a/php/src/controleur/ModerateurControleur.php b/php/src/controleur/ModerateurControleur.php
new file mode 100644
index 0000000..8b25478
--- /dev/null
+++ b/php/src/controleur/ModerateurControleur.php
@@ -0,0 +1,21 @@
+{{ profil.prenom }} {{ profil.nom }}
Développeur web chez CGI FRANCE
Voir le détail du profil
- {% if user.role == 'admin' %}
+ {% if role == 'Admin' %}
Bannir l'utilisateur
{% endif %}
From 1e4aaf41b84febe7a3868a0bd7c38ee28a60a4e9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Cl=C3=A9ment=20Verdoire?=
Date: Mon, 20 Nov 2023 17:13:26 +0100
Subject: [PATCH 4/5] m
---
php/src/controleur/AdminControleur.php | 39 ++++--------------------
php/src/controleur/FrontControleur.php | 8 +++++
php/templates/OffersList.html | 41 ++++++++++++++------------
php/templates/creerEvenement.html | 2 +-
php/templates/evenement.html | 22 ++++++++++----
5 files changed, 52 insertions(+), 60 deletions(-)
diff --git a/php/src/controleur/AdminControleur.php b/php/src/controleur/AdminControleur.php
index 5008df0..5253f01 100755
--- a/php/src/controleur/AdminControleur.php
+++ b/php/src/controleur/AdminControleur.php
@@ -1,41 +1,12 @@
supprimerCompte();
- break;
- case "consulterSignalement":
- $this->consulterSignalement();
- break;
- case "creerEvenement":
- $this->creerEvenement();
- break;
- case "supprimerEvenement":
- $this->supprimerEvenement();
- break;
- case "supprimerOffre":
- $this->supprimerOffre();
- break;
- default:
- parent::__construct();
- }
- }
-
protected function supprimerCompte()
{
//TODO
@@ -54,7 +25,7 @@ class AdminControleur extends ModerateurControleur
$img = ImageSaver::SaveImage('image');
if (!Validation::validerEvenement($_POST["titre"], $_POST["description"], $_POST["date"], $_POST["nbPlaceMax"], $img[1])) {
- $mdl = new UtilisateurModele();
+ $mdl = new AdminModele();
$mdl->ajouterEvenement($_POST["titre"], $_POST["description"], $_POST["date"], $_POST["nbPlaceMax"], $img[1]);
$this->listerEvenement();
@@ -69,8 +40,8 @@ class AdminControleur extends ModerateurControleur
public function supprimerEvenement(?array $params)
{
- $mdl = new UtilisateurModele();
- $mdl->deleteEvenement($params["id"]);
+ $mdl = new AdminModele();
+ $mdl->deleteEvenement($params["id2"]);
$this->listerEvenement();
}
diff --git a/php/src/controleur/FrontControleur.php b/php/src/controleur/FrontControleur.php
index e928df4..1dda6b7 100755
--- a/php/src/controleur/FrontControleur.php
+++ b/php/src/controleur/FrontControleur.php
@@ -44,6 +44,8 @@ class FrontControleur
$router->map('GET|POST', '/admin/[i:id]/[a:action]?', 'AdminControleur');
+ $router->map('GET|POST', '/admin/[i:id]/[a:action]/[i:id2]?', 'AdminControleur');
+
$id = 0;
$match = $router->match();
@@ -91,7 +93,13 @@ class FrontControleur
echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]);
return;
}
+ else{
+ $controller = "AdminControleur";
+ $controller = $namespace . $controller;
+ $controller = new $controller();
+ }
}
+
if($controller == "UtilisateurControleur")
{
$controller = $namespace . $controller;
diff --git a/php/templates/OffersList.html b/php/templates/OffersList.html
index 6353a39..f7b924d 100644
--- a/php/templates/OffersList.html
+++ b/php/templates/OffersList.html
@@ -97,26 +97,29 @@
- {% for offre in offres %}
-
-
-
-
{{ offre.getNom() }}
-
-
-
{{offre.getOffreur().Prenom()}}, {{offre.getOffreur().getNom() }} | {{ offre.getDateStringFr()}}
-
{{ offre.getDescription() }}
-
-
-
-
-
{{offre.getVille()}}
-
-
-
+ {% if offre is not empty %}
+ {% for offre in offres %}
+
+
+
+
{{ offre.getNom() }}
+
+
+
{{offre.getOffreur().Prenom()}}, {{offre.getOffreur().getNom() }} | {{ offre.getDateStringFr()}}
+
{{ offre.getDescription() }}
+
- {% endfor %}
+
+
+
{{offre.getVille()}}
+
+
+
+ {% endfor %}
+ {% else %}
+
Aucune offre trouvée.
+ {% endif %}
{% endfor %}
diff --git a/php/templates/menu.html b/php/templates/menu.html
index a771142..de1c7ae 100644
--- a/php/templates/menu.html
+++ b/php/templates/menu.html
@@ -27,7 +27,7 @@
{% if nom and prenom %}
- Déconnexion
+ Déconnexion
{% else %}