diff --git a/src/App.js b/src/App.js index fef6481f6..29eb339f4 100644 --- a/src/App.js +++ b/src/App.js @@ -4,6 +4,7 @@ import { BrowserRouter, Route, Switch } from "react-router-dom"; import theme from "./theme"; import GlobalStyles from "./GlobalStyles"; import Pace from "./shared/components/Pace"; +import ProtectedRoute from "./shared/components/ProtectedRoute"; const LoggedInComponent = lazy(() => import("./logged_in/components/Main")); @@ -19,9 +20,7 @@ function App() { }> - - - + diff --git a/src/logged_in/components/navigation/NavBar.js b/src/logged_in/components/navigation/NavBar.js index 541d5e0f2..54d00a996 100644 --- a/src/logged_in/components/navigation/NavBar.js +++ b/src/logged_in/components/navigation/NavBar.js @@ -322,6 +322,7 @@ function NavBar(props) { divider={index !== menuItems.length - 1} className={classes.permanentDrawerListItem} onClick={() => { + localStorage.removeItem('accessToken'); links.current[index].click(); }} aria-label={ diff --git a/src/logged_out/components/register_login/LoginDialog.js b/src/logged_out/components/register_login/LoginDialog.js index ff5f9e0a2..f2982a60a 100644 --- a/src/logged_out/components/register_login/LoginDialog.js +++ b/src/logged_out/components/register_login/LoginDialog.js @@ -59,6 +59,8 @@ function LoginDialog(props) { }, 1500); } else { setTimeout(() => { + const accessToken = btoa(loginEmail.current.value); + localStorage.setItem('accessToken', accessToken); history.push("/c/dashboard"); }, 150); } diff --git a/src/shared/components/ProtectedRoute.js b/src/shared/components/ProtectedRoute.js new file mode 100644 index 000000000..5f563fafd --- /dev/null +++ b/src/shared/components/ProtectedRoute.js @@ -0,0 +1,22 @@ +import React from 'react'; +import { Route, Redirect } from 'react-router-dom'; + +const isAuthenticated = () => { + const accessToken = localStorage.getItem('accessToken'); + return accessToken === btoa("test@web.com"); +}; + +const ProtectedRoute = ({ component: Component, ...rest }) => ( + + isAuthenticated() ? ( + + ) : ( + + ) + } + /> +); + +export default ProtectedRoute; \ No newline at end of file