Merge branch 'master' of https://codefirst.iut.uca.fr/git/jade.van_brabandt/3.01-QCM_MuscuMaths
continuous-integration/drone/push Build is passing Details

pull/37/head
Yvan CALATAYUD 1 year ago
commit 333dceb0d3

@ -19,8 +19,8 @@ class ControllerAdminAdministrators
session_start();
try {
if($_SESSION["idAdminConnected"] != null){
$this->twig =$twig;
if ($_SESSION["idAdminConnected"] != null) {
$this->twig = $twig;
$this->vues = $vues;
$this->mdAdministrator = new ModelAdministrator();
@ -29,9 +29,10 @@ class ControllerAdminAdministrators
echo $twig->render($vues["adminAdministrators"], [
'administrators' => $administrators,
'error' => $_SESSION["error"],
]);
}
else {
$_SESSION["error"] = null;
} else {
header("Location:/loginAdmin");
}
} catch (PDOException $e) {
@ -41,27 +42,42 @@ class ControllerAdminAdministrators
}
}
function delete($param) {
function delete($param)
{
$this->mdAdministrator->deleteAdministratorByID($param["id"]);
header("Location:/admin/administrators");
}
function add($param) {
function add($param)
{
var_dump($_SERVER['REQUEST_METHOD'] !== 'POST');
if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
$_SESSION["error"]="Méthode non autorisée.";
} else {
$username = $_POST['username'];
$password = $_POST['password'];
$username = trim($_POST['username']);
$password = trim($_POST['password']);
var_dump(!isset($_POST['username']) || !isset($_POST['password']) || empty($username) || empty($password));
if (!isset($username) || !isset($password) || empty($username) || empty($password)) {
$_SESSION["error"]="Veuillez remplir tous les champs.";
} else {
$Admin = [
'username' => $username,
'password' => $password,
];
if ($this->mdAdministrator->verifyAdministratorByName($Admin) != null) {
$_SESSION["error"]="Cet admin existe déjà.";
} else {
$this->mdAdministrator->addAdministrator($Admin);
header("Location:/admin/administrators");
}
}
}
}
function updatemodal($param) {
function updatemodal($param)
{
$administrator = $this->mdAdministrator->getAdministratorByID($param["id"]);
@ -70,7 +86,8 @@ class ControllerAdminAdministrators
]);
}
function update($param) {
function update($param)
{
$id = $_POST['id'];
$username = $_POST['username'];
@ -81,7 +98,7 @@ class ControllerAdminAdministrators
'password' => $password,
];
$this->mdAdministrator->updateAdministrator($id,$Admin);
$this->mdAdministrator->updateAdministrator($id, $Admin);
header("Location:/admin/administrators");
}

@ -149,6 +149,7 @@ class ControllerUser
$_SESSION["Score"] = 0;
$difficulty = $_POST['difficulty'];
$chapter = $_POST['chapter'];
$_SESSION['id_chapter'] = $_POST['chapter'];
$difficultyIsOk = TRUE;
$chapterIsOk = TRUE;
@ -238,9 +239,13 @@ class ControllerUser
$Final[$c]["PlayerAnswer"] = $answer;
$c = $c + 1;
}
// $idPlayer = $_SESSION["idPlayerConnected"];
// $idChapter = $_SESSION["chapter"];
// $numScore = $this->mdPlayer->getJouerByPlayerAndChapter( $idPlayer, $idChapter);
echo $this->twig->render($this->vues["viewScore"], [
'score' => $_SESSION["Score"],
'Final' => $Final,
// 'numScore' => $numScore,
]);
}
}
@ -249,12 +254,11 @@ class ControllerUser
function userStatus(){
if($_SESSION["idPlayerConnected"] != null){
//$this->mdAdministrator = new ModelAdministrator();
//$this->mdPlayer = new ModelPlayer();
//$administrators = $this->mdAdministrator->getAdministrators();
//$player = $this->mdPlayer->getPlayerByID($_SESSION["idAdminConnected"]);
echo $this->twig->render($this->vues["userStatus"]);
}
else {
header("Location:/loginPlayer");

@ -87,6 +87,19 @@ class GatewayAdministrator
);
$results = $this->con->getResults();
return $results[0];
}
public function verifyAdministratorByName($administrator)
{
$query = "SELECT administrators.id FROM administrators WHERE username = :username";
$this->con->executeQuery(
$query,
array(
':username' => array($administrator['username'], PDO::PARAM_STR),
)
);
$results = $this->con->getResults();
return $results[0];
}
}

@ -0,0 +1,71 @@
<?php
namespace gateways;
use usages\Connection;
use \PDO;
class GatewayJouer
{
private $con;
public function __construct()
{
global $dns, $user, $pass;
$this->con = new Connection($dns, $user, $pass);
}
public function addJouer($jouer)
{
$query = "INSERT into jouer(idChapter,idPlayer,numScore) values (:idChapter,:idPlayer,:numScore);";
$this->con->executeQuery(
$query,
array(
'idChapter' => array($jouer['idChapter'], PDO::PARAM_STR),
'idPlayer' => array($jouer['idPlayer'], PDO::PARAM_STR),
':numScore' => array($jouer['numScore'], PDO::PARAM_INT)
)
);
}
public function getJouerByPlayerAndChapter(int $idPlayer, int $idChapter)
{
$query = "SELECT jouer.numScore FROM jouer,player WHERE jouer.idPlayer = :idPlayer AND jouer.idPlayer = player.id AND jouer.idChapter = :idChapter AND jouer.idChapter = chapter.id ;";
$this->con->executeQuery(
$query,
array(
':idChapter' => array($idChapter, PDO::PARAM_INT),
':idPlayer' => array($idPlayer, PDO::PARAM_INT)
)
);
$results = $this->con->getResults();
return $results[0];
}
public function updateJouer($idPlayer, $idChapter, $jouer)
{
$query = "UPDATE jouer SET numScore = :numScore WHERE idPlayer = :idPlayer AND idChapter = :idChapter;";
$this->con->executeQuery(
$query,
array(
':idChapter' => array($idChapter, PDO::PARAM_INT),
':idPlayer' => array($idPlayer, PDO::PARAM_INT),
':numScore' => array($jouer['numScore'], PDO::PARAM_INT)
)
);
}
public function verifyJouer($idChapter, $idPlayer)
{
$query = "SELECT jouer.idChapter, jouer.idPlayer FROM jouer WHERE idPlayer = :idPlayer AND idChapter = :idChapter";
$this->con->executeQuery(
$query,
array(
':idChapter' => array($idChapter, PDO::PARAM_STR),
':idPlayer' => array($idPlayer, PDO::PARAM_STR)
)
);
$results = $this->con->getResults();
return $results[0];
}
}

@ -52,4 +52,9 @@ class ModelAdministrator
$administratorsId = $this->gwAdministrator->verifyAdministrator($Administrator);
return $administratorsId;
}
public function verifyAdministratorByName($Administrator)
{
$administratorsId = $this->gwAdministrator->verifyAdministratorByName($Administrator);
return $administratorsId;
}
}

@ -3,15 +3,18 @@
namespace models;
use gateways\GatewayPlayer;
use gateways\GatewayJouer;
use classes\Player;
class ModelPlayer
{
private $gwPlayer;
private $gwJouer;
public function __construct()
{
$this->gwPlayer = new GatewayPlayer();
$this->gwJouer = new GatewayJouer();
}
public function addPlayer($player)
@ -40,4 +43,20 @@ class ModelPlayer
{
$this->gwPlayer->deletePlayerByID($id);
}
public function addJouer($jouer)
{
$this->gwJouer->addJouer($jouer);
}
public function getJouerByPlayerAndChapter( $idPlayer, $idChapter)
{
$jouerDataArray = $this->gwJouer->getJouerByPlayerAndChapter($idPlayer,$idChapter);
return $jouerDataArray;
}
public function updateJouer($idPlayer, $idChapter, $jouer)
{
$this->gwJouer->updateJouer($idPlayer, $idChapter, $jouer);
}
}

@ -16,6 +16,7 @@
<div class="container mt-5">
<div>
<p>test</p>
</div>
</body>
</html>
Loading…
Cancel
Save