binding temporaire du player sur la page de profile (le code changera suite au merge) ⚰️

pull/83/head
Pierre Ferreira 1 year ago
parent 2f8f8f0321
commit c0ca6e2deb

@ -4,7 +4,7 @@ import dl from '../res/icon/download.png'
import defaultImg from '../res/img/Person.png' import defaultImg from '../res/img/Person.png'
//@ts-ignore //@ts-ignore
const ProfilePDP = ({ player }) => { const ProfilePDP = ({ player}) => {
const [selectedFile, setSelectedFile] = useState(null); const [selectedFile, setSelectedFile] = useState(null);
// @ts-ignore // @ts-ignore
@ -18,6 +18,12 @@ const ProfilePDP = ({ player }) => {
} }
}; };
//! gitans ?
if (player.pdp == undefined){
player.pdp = defaultImg;
}
console.log("pdp joueur " + player.pdp)
return ( return (
<div className='mainPDPContainer'> <div className='mainPDPContainer'>
{selectedFile ? ( {selectedFile ? (

@ -7,43 +7,41 @@ import './Profile.css'
import SessionService from '../services/SessionService'; import SessionService from '../services/SessionService';
import { PlayerProps } from '../types/Player'; import { PlayerProps } from '../types/Player';
import { update } from 'lodash'; import { update } from 'lodash';
import Human from '../model/Human';
//@ts-ignore //@ts-ignore
const Profile = () => { const Profile = () => {
//let player; //let player;
const [player, setPlayer] = useState<PlayerProps | null>(null); const [player, setPlayer] = useState<Human>(new Human("null", "nullHuman"));
//! useeffect pour l'instant, il faudra voir pour changer la facons de prendre une session //! useeffect pour l'instant, il faudra voir pour changer la facons de prendre une session
useEffect(() => { useEffect(() => {
const fetchUserInformation = async () => { const fetchUserInformation = async () => {
try { try {
const sessionData = await SessionService.getSession(); const sessionData = await SessionService.getSession();
if (sessionData.user) { if (sessionData.user) {
const updatedPlayer: PlayerProps = { const updatedPlayer: Human = {
pseudo: sessionData.user.pseudo, name: sessionData.user.pseudo,
profilePicture: sessionData.user.profilePicture, pdp: sessionData.user.profilePicture,
soloStats: { toJson: function (): { type: string; id: string; name: string; } {
nbGames: sessionData.user.soloStats.nbGames, throw new Error('Function not implemented.');
bestScore: sessionData.user.soloStats.bestScore, },
avgNbTry: sessionData.user.soloStats.avgNbTry, id: ''
},
onlineStats: {
nbGames: sessionData.user.onlineStats.nbGames,
nbWins: sessionData.user.onlineStats.nbWins,
ratio: sessionData.user.onlineStats.ratio,
},
}; };
setPlayer(updatedPlayer); setPlayer(updatedPlayer);
} }
} catch (error) { } catch (error) {
console.error(error); console.error(error);
} }
}}) }
fetchUserInformation();
}, []
)
return ( return (
<div className='mainContainer'> <div className='mainContainer'>
<ProfilePDP player={player}/> <ProfilePDP player={player}/>
<h1> {player?.pseudo} </h1> <h1> {player.name} </h1>
</div> </div>
); );
}; };

@ -1,9 +1,13 @@
import Player from "./Player"; import Player from "./Player";
import defaultImg from '../res/img/Person.png'
class Human extends Player{ class Human extends Player{
public pdp: string;
constructor(id: string, name: string){ constructor(id: string, name: string){
super(id, name) super(id, name)
this.pdp = defaultImg;
} }
toJson() { toJson() {

@ -1,14 +1,13 @@
import defaultImg from '../res/img/Person.png'
abstract class Player{ abstract class Player{
public id: string public id: string
public name: string; public name: string;
public pdp: string;
constructor(id: string, name: string){ constructor(id: string, name: string){
this.id=id this.id=id
this.name=name this.name=name
this.pdp = defaultImg;
} }
abstract toJson(): any abstract toJson(): any

Loading…
Cancel
Save