|
|
@ -80,7 +80,7 @@ class ControllerUser
|
|
|
|
|
|
|
|
|
|
|
|
function loginAdmin()
|
|
|
|
function loginAdmin()
|
|
|
|
{
|
|
|
|
{
|
|
|
|
if ($_SESSION["idAdminConnected"] != null){
|
|
|
|
if ($_SESSION["idAdminConnected"] != null) {
|
|
|
|
header("Location:/admin/administrators");
|
|
|
|
header("Location:/admin/administrators");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -93,7 +93,7 @@ class ControllerUser
|
|
|
|
|
|
|
|
|
|
|
|
function loginPlayer()
|
|
|
|
function loginPlayer()
|
|
|
|
{
|
|
|
|
{
|
|
|
|
if ($_SESSION["idPlayerConnected"] != null){
|
|
|
|
if ($_SESSION["idPlayerConnected"] != null) {
|
|
|
|
header("Location:/userStatus");
|
|
|
|
header("Location:/userStatus");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -104,21 +104,23 @@ class ControllerUser
|
|
|
|
$_SESSION["error"] = "";
|
|
|
|
$_SESSION["error"] = "";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function userStatus(){
|
|
|
|
function userStatus()
|
|
|
|
if($_SESSION["idPlayerConnected"] != null){
|
|
|
|
{
|
|
|
|
|
|
|
|
if ($_SESSION["idPlayerConnected"] != null) {
|
|
|
|
$this->mdPlayer = new ModelPlayer();
|
|
|
|
$this->mdPlayer = new ModelPlayer();
|
|
|
|
$player = $this->mdPlayer->getPlayerByID($_SESSION["idPlayerConnected"]);
|
|
|
|
$player = $this->mdPlayer->getPlayerByID($_SESSION["idPlayerConnected"]);
|
|
|
|
$maxscores = $this->mdPlayer->getMaxScoresWithChapter($player);
|
|
|
|
$maxscores = $this->mdPlayer->getMaxScoresWithChapter($player);
|
|
|
|
foreach ($maxscores as &$maxscore) {
|
|
|
|
foreach ($maxscores as &$maxscore) {
|
|
|
|
$maxscore["chapter"]=$this->mdChapter->getChapterByID($maxscore["idchapter"])->getName();
|
|
|
|
$maxscore["chapter"] = $this->mdChapter->getChapterByID($maxscore["idchapter"])->getName();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
echo $this->twig->render($this->vues["userStatus"],
|
|
|
|
echo $this->twig->render(
|
|
|
|
|
|
|
|
$this->vues["userStatus"],
|
|
|
|
[
|
|
|
|
[
|
|
|
|
'player' => $player,
|
|
|
|
'player' => $player,
|
|
|
|
'maxscores' => $maxscores,
|
|
|
|
'maxscores' => $maxscores,
|
|
|
|
]);
|
|
|
|
]
|
|
|
|
}
|
|
|
|
);
|
|
|
|
else {
|
|
|
|
} else {
|
|
|
|
header("Location:/loginPlayer");
|
|
|
|
header("Location:/loginPlayer");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -220,19 +222,23 @@ class ControllerUser
|
|
|
|
]);
|
|
|
|
]);
|
|
|
|
$_SESSION["error"] = "";
|
|
|
|
$_SESSION["error"] = "";
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
$answerNumber=$answerNumber-1;
|
|
|
|
$answerNumber = $answerNumber - 1;
|
|
|
|
$answerContent = $_SESSION["Answers"][$numQuestion][$answerNumber]->getContent();
|
|
|
|
$answerContent = $_SESSION["Answers"][$numQuestion][$answerNumber]->getContent();
|
|
|
|
$_SESSION["playerAnswersContent"][$numQuestion] = $answerContent;
|
|
|
|
$_SESSION["playerAnswersContent"][$numQuestion] = $answerContent;
|
|
|
|
if ($_SESSION["Questions"][$numQuestion]->getIdAnswerGood() == $_SESSION["Answers"][$numQuestion][$answerNumber]->getId()) {
|
|
|
|
if ($_SESSION["Questions"][$numQuestion]->getIdAnswerGood() == $_SESSION["Answers"][$numQuestion][$answerNumber]->getId()) {
|
|
|
|
$time = $_SESSION["PrevTime"]->diff($_SESSION["CurrTime"]);
|
|
|
|
$time = $_SESSION["PrevTime"]->diff($_SESSION["CurrTime"]);
|
|
|
|
$_SESSION["Score"] = $_SESSION["Score"] + 80 + 40 * ((30 - $time->s) / 100 * 10 / 3);
|
|
|
|
$_SESSION["Score"] = $_SESSION["Score"] + 80 + 40 * ((30 - $time->s) / 100 * 10 / 3);
|
|
|
|
|
|
|
|
if ($_SESSION["Questions"][$numQuestion]->getDifficulty() > 0) {
|
|
|
|
|
|
|
|
$_SESSION["Questions"][$numQuestion]->setDifficulty($_SESSION["Questions"][$numQuestion]->getDifficulty() - 1);
|
|
|
|
|
|
|
|
$this->mdQuestion->updateDifficulty($_SESSION["Questions"][$numQuestion]);
|
|
|
|
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
$_SESSION["Questions"][$numQuestion]->setNbFails($_SESSION["Questions"][$numQuestion]->getNbFails() + 1);
|
|
|
|
$_SESSION["Questions"][$numQuestion]->setNbFails($_SESSION["Questions"][$numQuestion]->getNbFails() + 1);
|
|
|
|
$this->mdQuestion->updateNbFails($_SESSION["Questions"][$numQuestion]);
|
|
|
|
$this->mdQuestion->updateNbFails($_SESSION["Questions"][$numQuestion]);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if($_SESSION["Questions"][$numQuestion]->getNbFails() >= 25){
|
|
|
|
if ($_SESSION["Questions"][$numQuestion]->getNbFails() >= 25) {
|
|
|
|
if($_SESSION["Questions"][$numQuestion]->getDifficulty() < 3){
|
|
|
|
if ($_SESSION["Questions"][$numQuestion]->getDifficulty() < 3) {
|
|
|
|
$_SESSION["Questions"][$numQuestion]->setDifficulty($_SESSION["Questions"][$numQuestion]->getDifficulty() + 1);
|
|
|
|
$_SESSION["Questions"][$numQuestion]->setDifficulty($_SESSION["Questions"][$numQuestion]->getDifficulty() + 1);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
$_SESSION["Questions"][$numQuestion]->setNbFails(0);
|
|
|
|
$_SESSION["Questions"][$numQuestion]->setNbFails(0);
|
|
|
@ -281,16 +287,14 @@ class ControllerUser
|
|
|
|
// var_dump($jouer['maxscore'] <= $this->mdPlayer->getMaxScoreByPlayerAndChapter($jouer));
|
|
|
|
// var_dump($jouer['maxscore'] <= $this->mdPlayer->getMaxScoreByPlayerAndChapter($jouer));
|
|
|
|
// var_dump($jouer['maxscore'] >= $this->mdPlayer->getMaxScoreByPlayerAndChapter($jouer));
|
|
|
|
// var_dump($jouer['maxscore'] >= $this->mdPlayer->getMaxScoreByPlayerAndChapter($jouer));
|
|
|
|
|
|
|
|
|
|
|
|
if($this->mdPlayer->verifyJouer($jouer) == null){
|
|
|
|
if ($this->mdPlayer->verifyJouer($jouer) == null) {
|
|
|
|
$this->mdPlayer->addJouer($jouer);
|
|
|
|
$this->mdPlayer->addJouer($jouer);
|
|
|
|
}
|
|
|
|
} else if ($jouer['maxscore'] <= $this->mdPlayer->getMaxScoreByPlayerAndChapter($jouer)) {
|
|
|
|
else if($jouer['maxscore'] <= $this->mdPlayer->getMaxScoreByPlayerAndChapter($jouer))
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
$this->mdPlayer->updateJouer($jouer);
|
|
|
|
$this->mdPlayer->updateJouer($jouer);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
echo $this->twig->render($this->vues["viewScore"], [
|
|
|
|
echo $this->twig->render($this->vues["viewScore"], [
|
|
|
|
'score' => (int)$_SESSION["Score"],
|
|
|
|
'score' => (int) $_SESSION["Score"],
|
|
|
|
'Final' => $Final,
|
|
|
|
'Final' => $Final,
|
|
|
|
]);
|
|
|
|
]);
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -330,7 +334,7 @@ class ControllerUser
|
|
|
|
$Final[$c]["PlayerAnswer"] = $answer;
|
|
|
|
$Final[$c]["PlayerAnswer"] = $answer;
|
|
|
|
$c = $c + 1;
|
|
|
|
$c = $c + 1;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
$_SESSION["Score"] = (int)$_SESSION["Score"];
|
|
|
|
$_SESSION["Score"] = (int) $_SESSION["Score"];
|
|
|
|
|
|
|
|
|
|
|
|
$jouer = [
|
|
|
|
$jouer = [
|
|
|
|
'idchapter' => $_SESSION["idChapter"],
|
|
|
|
'idchapter' => $_SESSION["idChapter"],
|
|
|
@ -338,11 +342,9 @@ class ControllerUser
|
|
|
|
'maxscore' => $_SESSION["Score"]
|
|
|
|
'maxscore' => $_SESSION["Score"]
|
|
|
|
];
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
|
|
if($this->mdPlayer->verifyJouer($jouer) == null){
|
|
|
|
if ($this->mdPlayer->verifyJouer($jouer) == null) {
|
|
|
|
$this->mdPlayer->addJouer($jouer);
|
|
|
|
$this->mdPlayer->addJouer($jouer);
|
|
|
|
}
|
|
|
|
} else if ($jouer['maxscore'] <= $this->mdPlayer->getMaxScoreByPlayerAndChapter($jouer)) {
|
|
|
|
else if($jouer['maxscore'] <= $this->mdPlayer->getMaxScoreByPlayerAndChapter($jouer))
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
$this->mdPlayer->updateJouer($jouer);
|
|
|
|
$this->mdPlayer->updateJouer($jouer);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|