diff --git a/client/src/pages/Join/states/Code/Code.jsx b/client/src/pages/Join/states/Code/Code.jsx new file mode 100644 index 0000000..10699c5 --- /dev/null +++ b/client/src/pages/Join/states/Code/Code.jsx @@ -0,0 +1,55 @@ +import Button from "@/common/components/Button"; +import {faRightToBracket, faWarning} from "@fortawesome/free-solid-svg-icons"; +import {useEffect, useState} from "react"; +import {socket} from "@/common/utils/socket.js"; +import "./styles.sass"; +import {FontAwesomeIcon} from "@fortawesome/react-fontawesome"; +import {useParams} from "react-router"; + +export const Code = ({setState}) => { + + const params = useParams(); + + const [code, setCode] = useState(params.code || ""); + const [company, setCompany] = useState(""); + + const [error, setError] = useState(""); + + const joinRoom = () => { + socket.emit("JOIN_ROOM", {code, name: company}, (data) => { + if (data) { + setState("waiting"); + } else { + setError("Raum nicht gefunden"); + } + }); + } + + useEffect(() => { + const timeout = setTimeout(() => { + setError(""); + }, 30000); + + return () => clearTimeout(timeout); + }, [error]); + + return ( + <> + {error &&
{error}
+