'object' user contenant toutes les infos pour affichage nom, stats etc + correctif page endgame solo

pull/81/head
Baptiste MARCEL 1 year ago
parent 9f43096b19
commit 3ec19aadea

@ -28,6 +28,12 @@ function EndGame() {
const {winner, person, players, indices} =useGame()
console.log(winner)
let indice = indices[0]
const index = players.findIndex((p) => p.id == winner?.id)
if (index != -1) {
indice = indices[index]
}
const theme = useTheme();
return (
<div>
@ -39,7 +45,7 @@ function EndGame() {
</div>
<div className='winner'>
<img src={Person} width='300' height='300'/>
<h3>{indices[players.findIndex((p) => p.id == winner?.id)].ToString("fr")}</h3>
<h3>{indice.ToString("fr")}</h3>
</div>
<div className='bottom'>
<div className='centerDivH'>

@ -22,11 +22,15 @@ import { socket } from '../SocketConfig';
import { useNavigate } from 'react-router-dom';
import GameCreator from '../model/GameCreator';
import { useGame } from '../Contexts/GameContext';
import { set } from 'lodash';
function Play() {
const theme=useTheme()
const [username, setUsername] = useState('');
const [nbSoloGames, setNbSoloGames] = useState(0);
const [soloBestScore, setSoloBestScore] = useState(0);
const [soloAverageTry, setSoloAverageTry] = useState(0);
useEffect(() => {
const fetchUserInformation = async () => {
@ -37,6 +41,9 @@ function Play() {
// Vérifie si il y a une session
if (sessionData.user) {
setUsername(sessionData.user.pseudo);
setNbSoloGames(sessionData.user.soloStats.nbGames);
setSoloBestScore(sessionData.user.soloStats.bestScore);
setSoloAverageTry(sessionData.user.soloStats.averageTry);
} else {
// Pas de session on génère un guest random
setUsername(`Guest ${Math.floor(Math.random() * 100000)}`);
@ -130,16 +137,16 @@ function Play() {
<div className='textBoard'>
<div>
<h4>
Partie Jouées : <br/>
Partie gagnées : <br/>
Pions posés : <br/>
Parties jouées : <br/>
High-Score : <br/>
Nombre d'essaie moyen : <br/>
</h4>
</div>
<div>
<h4>
10 <br/>
2 <br/>
45 <br/>
{nbSoloGames} <br/>
{soloBestScore} <br/>
{soloAverageTry} <br/>
</h4>
</div>
</div>

@ -2,18 +2,30 @@ const DatabaseService = require('../services/DatabaseService');
class SessionController {
static async getUserInformation(req, res) {
const db = new DatabaseService();
try{
console.log(req.session);
await db.connect();
if (!req.session.user) {
res.status(200).json({ message: 'User not found' });
res.status(200).json({ error: "true", message: 'User not found' });
return;
}
req.session.user.soloStats = await db.getSoloStatsByUserId(req.session.user.idUser);
req.session.user.onlineStats = await db.getOnlineStatsByUserId(req.session.user.idUser);
console.log(req.session.user);
res.status(200).json({ user: req.session.user });
}
catch(error){
console.error(error);
res.status(500).json({ error: 'Erreur lors de la récupération de l\'utilisateur.' });
}
finally{
await db.disconnect();
}
}
}

Loading…
Cancel
Save