forked from tom.biard/ScienceQuest
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.3 KiB
44 lines
1.3 KiB
<?php
|
|
namespace controller;
|
|
|
|
use config\Validation;
|
|
use model\IdSessionDoubleException;
|
|
use model\PseudoDejaPrisException;
|
|
use model\ValidationException;
|
|
use model\MdlInvite;
|
|
|
|
class PseudoController{
|
|
|
|
public function defaultAction(){
|
|
global $twig, $config;
|
|
global $basePath;
|
|
$dVue = [];
|
|
$dVueErreur = [];
|
|
|
|
if(isset($_POST["pseudo"])){
|
|
try{
|
|
$mdlInvite = new MdlInvite();
|
|
$pseudo = $_POST["pseudo"];
|
|
$pseudo = Validation::valPseudo($pseudo, $dVueErreur);
|
|
$role = $mdlInvite->insertInvite($pseudo, session_id());
|
|
}catch(ValidationException $e){
|
|
|
|
}catch(PseudoDejaPrisException $e){
|
|
$dVueErreur[] = "Pseudo déjà pris";
|
|
}catch(IdSessionDoubleException $e){
|
|
try{
|
|
$role = $mdlInvite->setPseudo($e->getIdJoueur(), $pseudo);
|
|
|
|
}catch(PseudoDejaPrisException $e){
|
|
$dVueErreur[] = "Pseudo déjà pris";
|
|
}
|
|
}
|
|
|
|
if(isset($role)){
|
|
$_SESSION['role'] = $role;
|
|
header('Location: '.$basePath.'/jouer');
|
|
}
|
|
}
|
|
echo $twig->render($config['templates']['pseudo'], ["dVue" => $dVue, "dVueErreur" => $dVueErreur]);
|
|
}
|
|
} |