|
|
@ -1,23 +1,33 @@
|
|
|
|
<?php
|
|
|
|
<?php
|
|
|
|
namespace controller;
|
|
|
|
namespace controller;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
use config\Validation;
|
|
|
|
|
|
|
|
use model\Connection;
|
|
|
|
|
|
|
|
use model\UserGateway;
|
|
|
|
|
|
|
|
|
|
|
|
class FrontController
|
|
|
|
class FrontController
|
|
|
|
{
|
|
|
|
{
|
|
|
|
public function __construct()
|
|
|
|
public function __construct()
|
|
|
|
{
|
|
|
|
{
|
|
|
|
global $twig;
|
|
|
|
global $twig;
|
|
|
|
|
|
|
|
|
|
|
|
session_start();
|
|
|
|
$con = new Connection("mysql:host=mysql;dbname=iut", "aljeudilem", "22061337");
|
|
|
|
|
|
|
|
|
|
|
|
// Tableau qui contient les messages d'erreur
|
|
|
|
// Tableau qui contient les messages d'erreur
|
|
|
|
$dVueErreur = [];
|
|
|
|
$dVueErreur = [];
|
|
|
|
|
|
|
|
$dVue = [];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
session_start();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if(isset($_SESSION['pseudo']))
|
|
|
|
|
|
|
|
$dVue['pseudo'] = $_SESSION['pseudo'];
|
|
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
try {
|
|
|
|
$action = $_REQUEST['action'] ?? null;
|
|
|
|
$action = $_REQUEST['action'] ?? null;
|
|
|
|
|
|
|
|
|
|
|
|
switch($action) {
|
|
|
|
switch($action) {
|
|
|
|
case null:
|
|
|
|
case null:
|
|
|
|
echo $twig->render('accueil.html');
|
|
|
|
echo $twig->render('accueil.html', ['dVue' => $dVue]);
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
case 'join':
|
|
|
|
case 'join':
|
|
|
|
echo $twig->render('join.html');
|
|
|
|
echo $twig->render('join.html');
|
|
|
@ -26,11 +36,33 @@ class FrontController
|
|
|
|
$this->CreateParty();
|
|
|
|
$this->CreateParty();
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
case 'validationFormulaire':
|
|
|
|
case 'validationFormulaire':
|
|
|
|
$this->ValidationFormulaire($dVueErreur);
|
|
|
|
$this->ValidationFormulaire($dVueErreur, $dVue);
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
case 'admin':
|
|
|
|
case 'admin':
|
|
|
|
new AdminController();
|
|
|
|
new AdminController();
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
|
|
|
|
case 'login':
|
|
|
|
|
|
|
|
if(empty($_SESSION) && !isset($_REQUEST['login']))
|
|
|
|
|
|
|
|
echo $twig->render('login.html');
|
|
|
|
|
|
|
|
elseif(isset($_REQUEST['login'])) {
|
|
|
|
|
|
|
|
Validation::valUserLogin($_REQUEST['login'], $dVueErreur);
|
|
|
|
|
|
|
|
$ug = new UserGateway($con);
|
|
|
|
|
|
|
|
if($ug->login($_REQUEST['login'], $_REQUEST['password'])) {
|
|
|
|
|
|
|
|
$_SESSION['pseudo'] = $_REQUEST['login'];
|
|
|
|
|
|
|
|
header("Location: .");
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
$dVueErreur[] = "Connexion échouée";
|
|
|
|
|
|
|
|
throw new LoginException("Connexion err");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
} else
|
|
|
|
|
|
|
|
header("Location: .");
|
|
|
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
case 'disconnect':
|
|
|
|
|
|
|
|
session_unset();
|
|
|
|
|
|
|
|
session_destroy();
|
|
|
|
|
|
|
|
$_SESSION = array();
|
|
|
|
|
|
|
|
header("Location: .");
|
|
|
|
|
|
|
|
break;
|
|
|
|
//mauvaise action
|
|
|
|
//mauvaise action
|
|
|
|
default:
|
|
|
|
default:
|
|
|
|
$dVueErreur[] = "Erreur d'appel php";
|
|
|
|
$dVueErreur[] = "Erreur d'appel php";
|
|
|
@ -40,6 +72,9 @@ class FrontController
|
|
|
|
} catch (\PDOException $e) {
|
|
|
|
} catch (\PDOException $e) {
|
|
|
|
$dVueErreur[] = 'Erreur avec la base de données !';
|
|
|
|
$dVueErreur[] = 'Erreur avec la base de données !';
|
|
|
|
echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]);
|
|
|
|
echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]);
|
|
|
|
|
|
|
|
} catch (LoginException $e) {
|
|
|
|
|
|
|
|
echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]);
|
|
|
|
|
|
|
|
echo $twig->render('login.html');
|
|
|
|
} catch (\Exception $e2) {
|
|
|
|
} catch (\Exception $e2) {
|
|
|
|
$dVueErreur[] = 'Erreur inattendue !';
|
|
|
|
$dVueErreur[] = 'Erreur inattendue !';
|
|
|
|
echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]);
|
|
|
|
echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]);
|
|
|
@ -56,7 +91,7 @@ class FrontController
|
|
|
|
echo $twig->render('create.html', ['dVueCreate' => $dVueCreate]);
|
|
|
|
echo $twig->render('create.html', ['dVueCreate' => $dVueCreate]);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public function ValidationFormulaire(array &$dVueErreur)
|
|
|
|
public function ValidationFormulaire(array &$dVueErreur, array &$dVue)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
global $twig;
|
|
|
|
global $twig;
|
|
|
|
|
|
|
|
|
|
|
@ -64,9 +99,7 @@ class FrontController
|
|
|
|
$difficulty = $_POST['difficulty'] ?? '';
|
|
|
|
$difficulty = $_POST['difficulty'] ?? '';
|
|
|
|
\config\Validation::val_form($game, $difficulty, $dVueErreur);
|
|
|
|
\config\Validation::val_form($game, $difficulty, $dVueErreur);
|
|
|
|
|
|
|
|
|
|
|
|
$dVue = [
|
|
|
|
$dVue['info'] = "Jeu '$game' créé avec la difficulté $difficulty";
|
|
|
|
'info' => "Jeu '$game' créé avec la difficulté $difficulty"
|
|
|
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
echo $twig->render('accueil.html', ['dVue' => $dVue, 'dVueErreur' => $dVueErreur]);
|
|
|
|
echo $twig->render('accueil.html', ['dVue' => $dVue, 'dVueErreur' => $dVueErreur]);
|
|
|
|
}
|
|
|
|
}
|
|
|
|