56 lines
2.0 KiB
JavaScript

import { BrowserRouter, Routes, Route } from "react-router-dom";
import Layout from "../pages/Layout";
import Home from "../pages/Home";
import AboutUs from "../pages/AboutUs";
import Privacy from "../pages/Privacy";
import ContactUs from "../pages/ContactUs";
import Morceaux from "../pages/Morceaux";
import MorceauDetail from "../pages/MorceauDetail";
import Inventaire from "../pages/Inventaire";
import Login from "../pages/Login";
import Logout from "../pages/Logout";
import Register from "../pages/Register";
import Formulaire from "../pages/Formulaire";
import { useState, useEffect } from "react";
import React from 'react';
import { useCookies } from 'react-cookie';
const App = () => {
const [cookies, setCookie] = useCookies(['name']);
useEffect(() => {
async function FetchUser() {
const response = await fetch(`https://localhost:7292/api/WhoAmI`, { credentials: 'include' });
if (response.status === 200) {
var user = await response.json();
setCookie('GMGM', {...user, LoggedIn:true}, { path: '/', SameSite:'strict' })
}
else setCookie('GMGM', {LoggedIn:false}, { path: '/', SameSite:'strict' })
}
if (cookies.GMGM === null) {
FetchUser();
}
});
return (
<BrowserRouter>
<Routes>
<Route path="/" element={<Layout />}>
<Route index element={<Home />} />
<Route path="morceaux" element={<Morceaux/>} />
<Route path="aboutUs" element={<AboutUs/>} />
<Route path="contactUs" element={<ContactUs/>}/>
<Route path="privacy" element={<Privacy/>}/>
<Route path="morceaux/:id" element={<MorceauDetail/>}/>
<Route path="inventaire" element={<Inventaire/>}/>
<Route path="login" element={<Login/>}/>
<Route path="logout" element={<Logout/>}/>
<Route path="register" element={<Register/>}/>
<Route path="formulaire" element={<Formulaire/>}/>
</Route>
</Routes>
</BrowserRouter>
);
};
export default App;