ajouter debut d'un admincontroller

correction_routeur
Gwenael PLANCHON 2 years ago
parent ea0422a2b3
commit 4390b2e3e0

@ -0,0 +1,61 @@
<?php
namespace controller;
use Exception;
//gerer la connexion des admins
class AdminController {
public function __construct(){
//TODO actions, liste actions, actions autorisées
global $twig;
//on démarre ou reprend la session, obtenir $_SESSION
session_start();
//on initialise un tableau d'erreur pour etre utilisé par la vue erreur
$dVueEreur = [];
//verifier si l'utilisateur est connecté et admin
if(isset($_SESSION["isAdmin"])){
if($_SESSION["isAdmin"]==true){
//donner la page admin a l'admin
try {
$action = $_REQUEST['admin'] ?? null;
switch($action) {
case null:
echo $twig->render('admin/accueil.html');
break;
case 'stats':
echo $twig->render('admin/stats.html');
break;
case 'ajouterScientifiques':
echo $twig->render('admin/ajouter.html');
break;
//mauvaise action
default:
$dVueErreur[] = "Erreur d'appel php";
echo $twig->render('accueil.html', ['dVueErreur' => $dVueErreur]);
break;
}
} catch (\PDOException $e) {
$dVueErreur[] = 'Erreur avec la base de données !';
echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]);
} catch (\Exception $e2) {
$dVueErreur[] = 'Erreur inattendue !';
echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]);
}
}
}
//verifier si l'utilisateur est connecté mais pas admin
if(isset($_SESSION["isLogged"])){
if($_SESSION["isLogged"]==true) {
//dire acces interdit au non admins
array_push($dVueEreur, "Erreur 403 : Acces interdit");
echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]);
exit(0);
}
}
//renvoyer a la page de connexion pour les non connectés
echo $twig->render('login.html');
exit(0);
}
}
?>

@ -28,7 +28,9 @@ class FrontController
case 'validationFormulaire':
$this->ValidationFormulaire($dVueErreur);
break;
case 'admin':
new AdminController();
break;
//mauvaise action
default:
$dVueErreur[] = "Erreur d'appel php";

@ -0,0 +1,20 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Se connecter</title>
</head>
<body>
<h1>Se connecter</h1>
<center>
<form action="#" method="post">
<label for="login">Login</label>
<input type="text" name="login" id="login">
<label for="login">Mot de passe</label>
<input type="password" name="password" id="password">
<input type="submit" value="Valider">
</form>
</center>
</body>
</html>
Loading…
Cancel
Save