Cleanup routes with AuthRoute
This commit is contained in:
@@ -9,29 +9,32 @@ import ManagePage from "./pages/ManagePage";
|
|||||||
import ManageStudentsPage from "./pages/ManageStudentsPage";
|
import ManageStudentsPage from "./pages/ManageStudentsPage";
|
||||||
import AuthenticatedRoute from "./components/AuthenticatedRoute";
|
import AuthenticatedRoute from "./components/AuthenticatedRoute";
|
||||||
|
|
||||||
|
const AuthRoute = ({ isAuthenticated = true, path, children }) => {
|
||||||
|
return (
|
||||||
|
<Route path={path}>
|
||||||
|
<AuthenticatedRoute isAuthenticated={isAuthenticated}>
|
||||||
|
{children}
|
||||||
|
</AuthenticatedRoute>
|
||||||
|
</Route>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
function App() {
|
function App() {
|
||||||
return (
|
return (
|
||||||
<div className="App">
|
<div className="App">
|
||||||
<Route path="/login">
|
<AuthRoute path="/login" isAuthenticated={false}>
|
||||||
<AuthenticatedRoute isAuthenticated={false}>
|
|
||||||
<LoginPage />
|
<LoginPage />
|
||||||
</AuthenticatedRoute>
|
</AuthRoute>
|
||||||
</Route>
|
<AuthRoute path="/logout" isAuthenticated={false}>
|
||||||
<Route path="/logout">
|
|
||||||
<AuthenticatedRoute isAuthenticated={false}>
|
|
||||||
<LogoutPage />
|
<LogoutPage />
|
||||||
</AuthenticatedRoute>
|
</AuthRoute>
|
||||||
</Route>
|
<AuthRoute path="/register" isAuthenticated={false}>
|
||||||
<Route path="/register">
|
|
||||||
<AuthenticatedRoute isAuthenticated={false}>
|
|
||||||
<RegisterPage />
|
<RegisterPage />
|
||||||
</AuthenticatedRoute>
|
</AuthRoute>
|
||||||
</Route>
|
|
||||||
<Route path="/">
|
<AuthRoute path="/">
|
||||||
<AuthenticatedRoute>
|
|
||||||
<HomePage />
|
<HomePage />
|
||||||
</AuthenticatedRoute>
|
</AuthRoute>
|
||||||
</Route>
|
|
||||||
|
|
||||||
<Route path="/course/:id">
|
<Route path="/course/:id">
|
||||||
{(params) => {
|
{(params) => {
|
||||||
@@ -43,11 +46,9 @@ function App() {
|
|||||||
}}
|
}}
|
||||||
</Route>
|
</Route>
|
||||||
|
|
||||||
<Route path="/manage">
|
<AuthRoute path="/manage">
|
||||||
<AuthenticatedRoute>
|
|
||||||
<ManagePage />
|
<ManagePage />
|
||||||
</AuthenticatedRoute>
|
</AuthRoute>
|
||||||
</Route>
|
|
||||||
|
|
||||||
<Route path="/manage/:cid/students">
|
<Route path="/manage/:cid/students">
|
||||||
{(params) => {
|
{(params) => {
|
||||||
|
|||||||
Reference in New Issue
Block a user