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
continuous-integration/drone/push Build is passing
Details
commit
5689be418e
Binary file not shown.
@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
class ControllerUserLobby
|
||||
{
|
||||
private $mdLobby;
|
||||
|
||||
private $twig;
|
||||
private $vues;
|
||||
|
||||
function __construct()
|
||||
{
|
||||
global $dns, $user, $pass, $vues, $twig;
|
||||
session_start();
|
||||
try {
|
||||
$this->twig =$twig;
|
||||
$this->vues = $vues;
|
||||
|
||||
$this->mdLobby = new ModelLobby();
|
||||
|
||||
$lobbies = $this->mdLobby->getlobbies();
|
||||
|
||||
|
||||
echo $twig->render($vues["lobby"], [
|
||||
'lobbies' => $lobbies,
|
||||
]);
|
||||
|
||||
} catch (PDOException $e) {
|
||||
// Gérez les erreurs PDO ici
|
||||
} catch (Exception $e2) {
|
||||
// Gérez d'autres erreurs ici
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,76 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="fr">
|
||||
<head>
|
||||
<meta charset=utf-8>
|
||||
<title>Math'Educ</title>
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-T3c6CoIi6uLrA9TneNEoa7RxnatzjcDSCmG1MXxSR1GAsXEV/Dwwykc2MPK8M2HN" crossorigin="anonymous">
|
||||
<link rel="stylesheet" href="/css/global.css">
|
||||
</head>
|
||||
|
||||
<body id="bodyStyle">
|
||||
<div class="container mt-5">
|
||||
|
||||
<div class="container d-flex justify-content-between">
|
||||
<h1 style="color: white;">Liste des Lobbies</h1>
|
||||
<div class="btn">
|
||||
<a type="button" class="btn btn-primary" href="">ajouter un Lobby</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<ul class="list-group">
|
||||
<li class="list-group-item d-flex justify-content-between align-items-center">
|
||||
<h4>Lobby</h4>
|
||||
<h4>Nombre de joueurs</h4>
|
||||
<h4></h4>
|
||||
</li>
|
||||
{% for lobby in lobbies %}
|
||||
<li class="list-group-item d-flex justify-content-between align-items-center">
|
||||
<h6>{{lobby.name}}</h6>
|
||||
<h6>{{lobby.nbPlayer}}/6</h6>
|
||||
<div class="btn">
|
||||
<a type="button" class="btn btn-primary" href="">Rejoindre</a>
|
||||
</div>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js"></script>
|
||||
|
||||
<div class="modal fade" id="modalquestions">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="exampleModalLabel">Ajouter une question</h5>
|
||||
</div>
|
||||
<form method="POST" action="/admin/questions/add">
|
||||
<div class="modal-body">
|
||||
<div class="form-group">
|
||||
<label for="name">Contenu de la question :</label>
|
||||
<input type="text" class="form-control" id="content" name="content">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="name">Chapitre de la question :</label>
|
||||
<select class="form-control" id="idChapter" name="idChapter">
|
||||
{% for chapter in chapters %}
|
||||
<option value="{{chapter.id}}" >{{chapter.name}}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="name">Réponse 1 de la question :</label>
|
||||
<input type="text" class="form-control" id="answer1" name="answer1">
|
||||
<input type="radio" name="correctAnswer" checked="checked" value="0"> Correct
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Fermer</button>
|
||||
<button type="submit" class="btn btn-primary">Enregistrer</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -1,89 +1,146 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="fr">
|
||||
|
||||
|
||||
<head>
|
||||
<meta charset=utf-8>
|
||||
<title>Math'Educ</title>
|
||||
<link rel="stylesheet" href="css/global.css">
|
||||
<link rel="stylesheet" href="css/chrono.css">
|
||||
<link rel="stylesheet" href="css/progressBar.css">
|
||||
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-T3c6CoIi6uLrA9TneNEoa7RxnatzjcDSCmG1MXxSR1GAsXEV/Dwwykc2MPK8M2HN" crossorigin="anonymous">
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-C6RzsynM9kWDrMNeT87bh95OGNyZPhcTNXj1NW7RuBCsyN/o0jlpcV8Qyq46cDfL" crossorigin="anonymous"></script>
|
||||
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
|
||||
|
||||
</head>
|
||||
|
||||
<body id="bodyStyle">
|
||||
<div id="chrono" class="container mx-5 my-4 position-relative">
|
||||
<div id="centre"></div>
|
||||
<div id="aiguille-container">
|
||||
<div id="aiguille" class="aiguille"></div>
|
||||
</div>
|
||||
<div id="fond"></div>
|
||||
</div>
|
||||
|
||||
<div class="container py-3">
|
||||
<div class="progress">
|
||||
<div class="progress-bar progress-bar-striped active progress-bar-animated" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100" id="load" style="width:0%">
|
||||
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-lg-3">
|
||||
<div id="chrono" class="my-4 position-relative">
|
||||
<div id="centre"></div>
|
||||
<div id="aiguille-container">
|
||||
<div id="aiguille" class="aiguille"></div>
|
||||
</div>
|
||||
<div id="fond"></div>
|
||||
</div>
|
||||
<img src="Media/rocket.png" id="rocket" style="left: 0px;">
|
||||
</div>
|
||||
|
||||
<button type="button" id="repondbien" class="btn btn-primary mt-2" autocomplete="off">OK</button>
|
||||
<button type="button" id="repondmal" class="btn btn-danger mt-2" autocomplete="off">KO</button>
|
||||
</div>
|
||||
<div class="col-lg-8">
|
||||
<div class="container mt-3">
|
||||
<div class="row my-2">
|
||||
<div class="progress">
|
||||
<div class="progress-bar progress-bar-striped active progress-bar-animated" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100" id="load" style="width:0%">
|
||||
|
||||
</div>
|
||||
<img src="Media/rocket.png" id="rocket" style="left: 0px;">
|
||||
</div>
|
||||
|
||||
{# <button type="button" id="repondbien" class="btn btn-primary mt-2" autocomplete="off">OK</button>
|
||||
<button type="button" id="repondmal" class="btn btn-danger mt-2" autocomplete="off">KO</button> #}
|
||||
</div>
|
||||
<div class="row my-2">
|
||||
<div class="progress">
|
||||
<div class="progress-bar progress-bar-striped active progress-bar-animated" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100" id="load" style="width:0%">
|
||||
|
||||
</div>
|
||||
<img src="Media/rocket.png" id="rocket" style="left: 0px;">
|
||||
</div>
|
||||
</div>
|
||||
<div class="row my-2">
|
||||
<div class="progress">
|
||||
<div class="progress-bar progress-bar-striped active progress-bar-animated" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100" id="load" style="width:0%">
|
||||
|
||||
</div>
|
||||
<img src="Media/rocket.png" id="rocket" style="left: 0px;">
|
||||
</div>
|
||||
</div>
|
||||
<div class="row my-2">
|
||||
<div class="progress">
|
||||
<div class="progress-bar progress-bar-striped active progress-bar-animated" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100" id="load" style="width:0%">
|
||||
|
||||
</div>
|
||||
<img src="Media/rocket.png" id="rocket" style="left: 0px;">
|
||||
</div>
|
||||
</div>
|
||||
<div class="row my-2">
|
||||
<div class="progress">
|
||||
<div class="progress-bar progress-bar-striped active progress-bar-animated" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100" id="load" style="width:0%">
|
||||
|
||||
</div>
|
||||
<img src="Media/rocket.png" id="rocket" style="left: 0px;">
|
||||
</div>
|
||||
</div>
|
||||
<div class="row my-2">
|
||||
<div class="progress">
|
||||
<div class="progress-bar progress-bar-striped active progress-bar-animated" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100" id="load" style="width:0%">
|
||||
|
||||
</div>
|
||||
<img src="Media/rocket.png" id="rocket" style="left: 0px;">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container text-center text-white">
|
||||
<div class="container border border-white rounded mt-5">
|
||||
<p class="fs-2">
|
||||
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Provident fuga cum soluta iure libero! Ullam, expedita excepturi! Odio distinctio quos quasi commodi libero ratione corrupti, unde iste explicabo suscipit consequatur ipsum! Id beatae corrupti ipsa totam deserunt, vel tenetur, iusto quaerat asperiores veritatis quidem! Vel dolorem recusandae necessitatibus ullam laborum!
|
||||
{{ questions[numQuestion]['content'] }}
|
||||
<br>
|
||||
Question n° : {{ numQuestion+1 }}/10
|
||||
</p>
|
||||
</div>
|
||||
<div class="row g-5">
|
||||
<div class="col pt-5">
|
||||
<input type="radio" class="btn-check" name="reponse" id="reponse1" autocomplete="off">
|
||||
<label class="btn fs-2 container text-white" for="reponse1" style="background-color:blue;">
|
||||
Lorem, ipsum.
|
||||
</label>
|
||||
</div>
|
||||
<div class="col pt-5">
|
||||
<input type="radio" class="btn-check" name="reponse" id="reponse2" autocomplete="off">
|
||||
<label class="btn fs-2 container text-white" for="reponse2" style="background-color:green;">
|
||||
Lorem, ipsum.
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row g-5">
|
||||
<div class="col pt-5">
|
||||
<input type="radio" class="btn-check" name="reponse" id="reponse3" autocomplete="off">
|
||||
<label class="btn fs-2 container text-white" for="reponse3" style="background-color:red;">
|
||||
Lorem, ipsum.
|
||||
</label>
|
||||
<form id="FormQuestion" action="/verifQuestion" method="post">
|
||||
{# Awfull Code but it's valided by the 6ème membre #}
|
||||
<input type="hidden" name="numQuestion" value="{{ numQuestion }}">
|
||||
{# End of Awfull Code #}
|
||||
<div class="row g-5">
|
||||
<div class="col pt-5">
|
||||
<input type="radio" class="btn-check" name="answer" value="0" id="answer1" autocomplete="off" required>
|
||||
<label class="btn fs-2 container text-white" for="answer1" style="background-color:blue;">
|
||||
{{ questions[numQuestion]['answers'][0]['content'] }}
|
||||
</label>
|
||||
</div>
|
||||
<div class="col pt-5">
|
||||
<input type="radio" class="btn-check" name="answer" value="1" id="answer2" autocomplete="off">
|
||||
<label class="btn fs-2 container text-white" for="answer2" style="background-color:green;">
|
||||
{{ questions[numQuestion]['answers'][1]['content'] }}
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col pt-5">
|
||||
<input type="radio" class="btn-check" name="reponse" id="reponse4" autocomplete="off">
|
||||
<label class="btn fs-2 container text-white" for="reponse4" style="background-color:orange;">
|
||||
Lorem, ipsum.
|
||||
</label>
|
||||
<div class="row g-5">
|
||||
<div class="col pt-5">
|
||||
<input type="radio" class="btn-check" name="answer" value="2" id="answer3" autocomplete="off">
|
||||
<label class="btn fs-2 container text-white" for="answer3" style="background-color:red;">
|
||||
{{ questions[numQuestion]['answers'][2]['content'] }}
|
||||
</label>
|
||||
</div>
|
||||
<div class="col pt-5">
|
||||
<input type="radio" class="btn-check" name="answer" value="3" id="answer4" autocomplete="off">
|
||||
<label class="btn fs-2 container text-white" for="answer4" style="background-color:orange;">
|
||||
{{ questions[numQuestion]['answers'][3]['content'] }}
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-1 pt-5">
|
||||
<button type="button" class="fs-2 btn btn-success btn-lg">
|
||||
Valider
|
||||
</button>
|
||||
</div>
|
||||
<div class="col-1 pt-5">
|
||||
<button type="button" class="fs-2 btn btn-danger btn-lg">
|
||||
Passer
|
||||
</button>
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-1 pt-5">
|
||||
<button type="button" id="passerButton" class="fs-2 btn btn-danger btn-lg">
|
||||
Passer
|
||||
</button>
|
||||
</div>
|
||||
<div class="col-1 pt-5">
|
||||
<button type="submit" class="fs-2 btn btn-success btn-lg">
|
||||
Valider
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<script type="module" src="js/scriptChrono.js"></script>
|
||||
{# <script type="module" src="js/passer.js"></script> #}
|
||||
<script type="module" src="js/progressBar.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
<html>
|
@ -0,0 +1,20 @@
|
||||
<?php
|
||||
|
||||
//préfixe
|
||||
$rep = __DIR__ . '/../';
|
||||
|
||||
//Vues
|
||||
$vues["singleplayer"]="singleplayer.twig";
|
||||
$vues["multiplayer"]="multiplayer.twig";
|
||||
$vues["home"]="home.twig";
|
||||
$vues["connexion"]="connexion.twig";
|
||||
$vues["themeChoice"]="themeChoice.twig";
|
||||
$vues["loginAdmin"]="loginAdmin.twig";
|
||||
$vues["adminAdministrators"]="adminAdministrators.twig";
|
||||
$vues["adminAdministratorsModal"]="adminAdministratorsModal.twig";
|
||||
$vues["adminChapters"]="adminChapters.twig";
|
||||
$vues["adminChaptersModal"]="adminChaptersModal.twig";
|
||||
$vues["adminQuestions"]="adminQuestions.twig";
|
||||
$vues["adminQuestionsModal"]="adminQuestionsModal.twig";
|
||||
$vues["viewScore"]="viewScore.twig";
|
||||
$vues["lobby"]="lobby.twig";
|
Loading…
Reference in new issue