1
0

Updated the GroupContext.jsx

This commit is contained in:
Mathias Wagner 2023-11-23 07:50:15 +01:00
parent 358158f1f3
commit d2beddc0e5
Signed by: Mathias
GPG Key ID: B8DC354B0A1F5B44

View File

@ -1,5 +1,6 @@
import {createContext, useEffect, useState} from "react"; import {createContext, useContext, useEffect, useState} from "react";
import {socket} from "@/common/utils/socket.js"; import {socket} from "@/common/utils/socket.js";
import {SettingsContext} from "@/common/contexts/SettingsProvider.jsx";
export const GroupContext = createContext({}); export const GroupContext = createContext({});
@ -11,8 +12,10 @@ export const GroupProvider = ({children}) => {
const [roundHistory, setRoundHistory] = useState([]); const [roundHistory, setRoundHistory] = useState([]);
const [groupName, setGroupName] = useState(""); const [groupName, setGroupName] = useState("");
const {startCapital} = useContext(SettingsContext);
const handleJoin = (group) => { const handleJoin = (group) => {
setGroups(groups => [...groups, {...group, capital: 25000}]); setGroups(groups => [...groups, {...group, capital: startCapital}]);
} }
const getGroupById = (id) => { const getGroupById = (id) => {
@ -24,7 +27,7 @@ export const GroupProvider = ({children}) => {
} }
const handleLeave = (group) => { const handleLeave = (group) => {
if (group.capital !== 25000) { if (group.capital !== startCapital) {
setGroups(groups_ => { setGroups(groups_ => {
const current = groups_.find(g => g.id === group.id); const current = groups_.find(g => g.id === group.id);
if (current) setAllGroups(all => [...all, current]); if (current) setAllGroups(all => [...all, current]);
@ -38,9 +41,7 @@ export const GroupProvider = ({children}) => {
socket.emit("UPDATE_CAPITAL", {id: groupId, capital: newCapital}); socket.emit("UPDATE_CAPITAL", {id: groupId, capital: newCapital});
setGroups(groups => groups.map(g => { setGroups(groups => groups.map(g => {
if (g.id === groupId) { if (g.id === groupId) return {...g, capital: newCapital};
return {...g, capital: newCapital};
}
return g; return g;
})); }));
} }