forked from tom.biard/ScienceQuest
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);
|
||||
}
|
||||
}
|
||||
?>
|
@ -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…
Reference in new issue