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

@ -1,6 +1,9 @@
<?php
namespace App\controleur;
use App\controleur\UtilisateurModele;
use App\controleur\ImageSaver;
use App\config\Validation;
class AdminControleur extends ModerateurControleur
{
@ -43,14 +46,33 @@ class AdminControleur extends ModerateurControleur
//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()

@ -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 {

@ -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

@ -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();
}
}

@ -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,

@ -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"]);

@ -16,7 +16,7 @@
<div>
{% 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 %}
</div>

@ -15,7 +15,7 @@
<main class="container mt-4">
<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 %}
{% for error in tabError %}

@ -22,7 +22,7 @@
</button>
</form>
<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>
<ul class="list-group">

@ -27,7 +27,7 @@
<!-- Afficher boutons de connexion et d'inscription -->
{% if nom and prenom %}
<!-- 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 %}
<div class="login-register">
<a href="{{dir}}/connection" class="button">Connexion</a>

Loading…
Cancel
Save