diff --git a/webapp/src/components/navbarre/home/index.jsx b/webapp/src/components/navbarre/home/index.jsx index 2e65d53..eb2395d 100644 --- a/webapp/src/components/navbarre/home/index.jsx +++ b/webapp/src/components/navbarre/home/index.jsx @@ -1,14 +1,22 @@ import NavListHome from "./navlist"; import list from "../list"; import LoginButton from "../login-button"; +import logout from "../../../lib/logout"; -function NavbarreHome() { +function NavbarreHome({auth, setAuth}) { return( ) } diff --git a/webapp/src/index.js b/webapp/src/index.js index 5661dca..9583648 100644 --- a/webapp/src/index.js +++ b/webapp/src/index.js @@ -9,21 +9,21 @@ import Register from "./pages/register"; const root = ReactDOM.createRoot(document.getElementById('root')); function App() { - const savedToken = localStorage.getItem('token'); - const [token, setToken] = useState(savedToken ? savedToken : null) + const savedToken = localStorage.getItem('auth'); + const [auth, setAuth] = useState(savedToken ? savedToken : null) useEffect(() => { - if(savedToken !== token){ - localStorage.setItem('token', token); + if(savedToken !== auth){ + localStorage.setItem('auth', auth); } - }, [token]); + }, [auth]); return ( - }/> - }/> - }/> + }/> + }/> + }/> }/> diff --git a/webapp/src/lib/logout.js b/webapp/src/lib/logout.js new file mode 100644 index 0000000..e31fd96 --- /dev/null +++ b/webapp/src/lib/logout.js @@ -0,0 +1,6 @@ +function logout({setAuth}) { + setAuth(null); + localStorage.removeItem('auth'); +} + +export default logout \ No newline at end of file diff --git a/webapp/src/pages/home/index.jsx b/webapp/src/pages/home/index.jsx index ac298a9..c4f547b 100644 --- a/webapp/src/pages/home/index.jsx +++ b/webapp/src/pages/home/index.jsx @@ -2,10 +2,10 @@ import NavbarreHome from "../../components/navbarre/home"; import HomeHero from "../../components/content/home/hero"; import Footer from "../../components/content/home/footer"; -function Home() { +function Home({auth, setAuth}) { return (
- +
diff --git a/webapp/src/pages/login/index.jsx b/webapp/src/pages/login/index.jsx index 6272cdb..fb2c621 100644 --- a/webapp/src/pages/login/index.jsx +++ b/webapp/src/pages/login/index.jsx @@ -1,7 +1,7 @@ import {Link, redirect, useNavigate} from "react-router-dom"; import {useState} from "react"; import {get, post} from '../../modules/fetcher'; -function Login({setToken}) { +function Login({setAuth}) { const navigate = useNavigate(); const loginUser = async (e) => { e.preventDefault() @@ -9,7 +9,10 @@ function Login({setToken}) { .then(async res => { if (res.status === 200) { console.log(res.JSON.message) - setToken(res.JSON.token) + setAuth({ + 'token': res.JSON.token, + 'username': username + }) navigate('/') } else { setError(res.message) diff --git a/webapp/src/pages/register/index.jsx b/webapp/src/pages/register/index.jsx index 7f460ef..a20f3fb 100644 --- a/webapp/src/pages/register/index.jsx +++ b/webapp/src/pages/register/index.jsx @@ -3,7 +3,7 @@ import {post} from "../../modules/fetcher"; import {useState} from "react"; -function Register({setToken}) { +function Register({setAuth}) { const navigate = useNavigate(); const registerUser = async (e) => { e.preventDefault() @@ -11,7 +11,10 @@ function Register({setToken}) { post('https://saucisson.justw.tf/api/users/register', {username, password}, '') .then(async res => { if (res.status === 200) { - setToken(res.JSON.token) + setAuth({ + 'token': res.JSON.token, + 'username': username + }) navigate('/') } else { setError(res.message)