Ignore:
Timestamp:
07/10/22 10:27:45 (2 years ago)
Author:
Danilo <danilo.najkov@…>
Branches:
master
Children:
a26f6a1
Parents:
cc4db18
Message:

reviews full feature

File:
1 edited

Legend:

Unmodified
Added
Removed
  • frontend/src/App.js

    rcc4db18 r899b19d  
    11import './App.css';
    2 import {Route, BrowserRouter as Router, Navigate, Routes} from "react-router-dom";
     2import {Route, BrowserRouter as Router, Navigate, Routes, useNavigate} from "react-router-dom";
    33import axios from 'axios'
    44import env from './env'
     
    1212import Restaurant from "./Dashboard/Restaurant";
    1313import Menu from "./Dashboard/Menu";
     14import Review from "./Dashboard/Review";
    1415
    1516
    1617function App() {
    17   const [user, setUser] = useState(false)
     18  const [user, setUser] = useState(undefined)
    1819  const [loading, setLoading] = useState(false)
    1920  useEffect(()=>{
     
    2930    })
    3031  }
     32  const logout = () => {
     33    setUser(undefined);
     34    sessionStorage.removeItem('Auth');
     35    window.location.replace('/')
     36  }
    3137  return (
    3238    <div style={{textAlign:'center'}}>
    3339      <Router>
    3440          <Routes>
    35             <Route path="/dashboard" element={loading ? <Spin /> : user ?<Dashboard setUser={setUser}/> :  <Navigate to="/login" replace={true} />}>
     41            <Route path="/dashboard" element={loading ? <Spin /> : user ? (user.isAdmin ? <Dashboard setUser={setUser}/> : <Navigate to="/" replace={true} />) :  <Navigate to="/login" replace={true} />}>
    3642              <Route path="/dashboard" element={<Restaurant/>}/>
    3743              <Route path="/dashboard/menu" element={<Menu/>}/>
    3844              <Route path="/dashboard/reservations" element={<Reservations/>}/>
    39               <Route path="/dashboard/reviews" element={'reviews'}/>
     45              <Route path="/dashboard/reviews" element={<Review/>}/>
    4046              <Route path="/dashboard/todo" element={'todo'}/>
    4147            </Route>
    4248            <Route path="/login" element={loading ? <Spin /> :  !user ? <Login setUser={setUser}/> :  <Navigate to="/dashboard" replace={true} />}/>
    4349            <Route path="/register" element={loading ? <Spin /> :  !user ? <Register setUser={setUser}/> :  <Navigate to="/dashboard" replace={true} />}/>
    44             <Route path="/" element={<FrontPage/>}/>
     50            <Route path="/" element={<FrontPage user={user} logout={logout}/>}/>
    4551          </Routes>
    4652      </Router>
Note: See TracChangeset for help on using the changeset viewer.