alexis-rendu
Clément Verdoire 1 year ago
parent 43729cfd59
commit 7f85096c7b

@ -1,6 +1,9 @@
<?php <?php
namespace App\controleur; namespace App\controleur;
use App\controleur\UtilisateurModele;
use App\controleur\ImageSaver;
use App\config\Validation;
class AdminControleur extends ModerateurControleur class AdminControleur extends ModerateurControleur
{ {
@ -43,14 +46,33 @@ class AdminControleur extends ModerateurControleur
//TODO //TODO
} }
protected function creerEvenement() public function creerEvenement()
{ {
//TODO 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', []);
}
} }
protected function supprimerEvenement() public function supprimerEvenement(?array $params)
{ {
//TODO $mdl = new UtilisateurModele();
$mdl->deleteEvenement($params["id"]);
$this->listerEvenement();
} }
protected function supprimerOffre() protected function supprimerOffre()

@ -4,11 +4,7 @@
namespace App\controleur; namespace App\controleur;
use App\router\AltoRouter; use App\router\AltoRouter;
use App\metier\Alumni; use App\controleur\Error;
use App\controleur\UtilisateurControleur;
use App\controleur\MembreControleur;
use App\controleur\AdminControleur;
class FrontControleur class FrontControleur
{ {
@ -72,12 +68,28 @@ class FrontControleur
//var_dump($match); //var_dump($match);
$namespace = 'App\\controleur\\';
echo "action: ".$action;
try { try {
if ($controller == "MembreControleur") { 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']); 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") { if ($controller == "AdminControleur") {
@ -89,13 +101,17 @@ class FrontControleur
echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]); echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]);
return; return;
} }
} else { }
$namespace = 'App\\Controleur\\'; if($controller == "UtilisateurControleur")
{
$controller = $namespace . $controller; $controller = $namespace . $controller;
$controller = new $controller(); $controller = new $controller();
} }
if (is_callable(array($controller, $action))) { if (is_callable(array($controller, $action))) {
echo "action callable";
call_user_func(array($controller, $action), $match['params']); call_user_func(array($controller, $action), $match['params']);
} else { } else {

@ -3,6 +3,7 @@
namespace App\controleur; namespace App\controleur;
use App\config\Validation; use App\config\Validation;
use App\gateway\ImageSaver; use App\gateway\ImageSaver;
use App\modele\MembreModele;
class MembreControleur extends UtilisateurControleur 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() 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() protected function proposerOffre()
{ {
//TODO //TODO

@ -213,35 +213,6 @@ class UtilisateurControleur
echo $twig->render('evenement.html', ['evenements' => $evenements]); 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) public function avoirDetailEvenement(?array $params)
{ {
@ -302,4 +273,14 @@ class UtilisateurControleur
echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]); echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]);
} }
} }
public function deconnexion()
{
session_destroy();
header('Location: accueil');
// global $twig;
// $twig->render('accueil.html',[]);
exit();
}
} }

@ -92,7 +92,7 @@ class MembreModele extends UtilisateurModele
// à la place de NULL passer id utilisateur créateur offre // à la place de NULL passer id utilisateur créateur offre
$offre = new Offre($this->offreGw->getNewId(), $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, $nom,
$desc, $desc,
$img, $img,

@ -231,10 +231,13 @@ class UtilisateurModele
foreach ($res as $row) foreach ($res as $row)
{ {
$resal = $alGw->ObtenirById($row['offreur']); $resal = $alGw->ObtenirById($row['offreur']);
$profilGw = new ProfilGateway(new Connection(DB_HOST,DB_USER,DB_PASS)); $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"]); $alumni = new Alumni(intval($resal[0]['id']),$resal[0]['mail'],$resal[0]['mdp'],$resal[0]['role'],$resProfl[0]['nom'],$resProfl[0]["prenom"]);

@ -16,7 +16,7 @@
<div> <div>
{% if role == 'Membre' or role == 'Admin' %} {% if role == 'Membre' or role == 'Admin' %}
<a href="{{dir}}/createOfferForm" type="button" class="btn btn-outline-success mb-4">Publier une offre</a> <a href="{{dir}}/user/{{id}}/createOfferForm" type="button" class="btn btn-outline-success mb-4">Publier une offre</a>
{% endif %} {% endif %}
</div> </div>

@ -15,7 +15,7 @@
<main class="container mt-4"> <main class="container mt-4">
<h1>Publier Une Offre</h1> <h1>Publier Une Offre</h1>
<form style="background-color: #00DBFF" class="p-4" enctype="multipart/form-data" action="createOffer" method="post"> <form style="background-color: #00DBFF" class="p-4" enctype="multipart/form-data" action="{{dir}}/user/{{id}}/createOffer" method="post">
{% if tabError is defined %} {% if tabError is defined %}
{% for error in tabError %} {% for error in tabError %}

@ -22,7 +22,7 @@
</button> </button>
</form> </form>
<h1>Liste des Événements</h1> <h1>Liste des Événements</h1>
<a href="{{dir}}/creerEvenement" class="btn btn-primary">Publier événement</a> <a href="{{dir}}/user/{{id}}/creerEvenement" class="btn btn-primary">Publier événement</a>
</div> </div>
<ul class="list-group"> <ul class="list-group">

@ -27,7 +27,7 @@
<!-- Afficher boutons de connexion et d'inscription --> <!-- Afficher boutons de connexion et d'inscription -->
{% if nom and prenom %} {% if nom and prenom %}
<!-- Afficher bouton de déconnexion --> <!-- Afficher bouton de déconnexion -->
<a href="{{dir}}/user/{{id}}/deconnexion" class="button">Déconnexion</a> <a href="{{dir}}/deconnexion" class="button">Déconnexion</a>
{% else %} {% else %}
<div class="login-register"> <div class="login-register">
<a href="{{dir}}/connection" class="button">Connexion</a> <a href="{{dir}}/connection" class="button">Connexion</a>

Loading…
Cancel
Save