Created
March 10, 2021 17:38
-
-
Save sethdorris/c13e54badd4832b0a8f4f22947870977 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import { React, useEffect, useState } from 'react'; | |
import AdminMenu from './Admin/Menu'; | |
import LoginPage from '../Pages/Login'; | |
import SearchPage from '../Pages/Search'; | |
import UavDetailsPage from '../Pages/UavDetailsPage'; | |
import ForgotPasswordPage from '../Pages/ForgotPassword'; | |
import RequestAccountPage from '../Pages/RequestAccount'; | |
import RequestReviewPage from '../Pages/Admin/RequestReview'; | |
import SUASRequests from '../Pages/Admin/sUASRequests'; | |
import PrivacyPage from '../Pages/Privacy'; | |
import NewSuasRequestDetails from './Admin/NewSuasRequestDetails'; | |
import ResetPasswordPage from '../Pages/ResetPassword'; | |
import LandingPage from '../Pages/Landing'; | |
import { Switch, Route } from "react-router-dom"; | |
import { useSelector, useDispatch } from 'react-redux'; | |
import { setUserData } from '../Redux/Actions/ActionTypes'; | |
import { RefreshUserData } from '../Services/api'; | |
let RouteController = () => { | |
var dispatch = useDispatch(); | |
let [isLoading, setIsLoading] = useState(true); | |
var userData = useSelector(state => state.UserData); | |
useEffect(async () => { | |
if (userData.Username == null) { | |
var refreshedData = await RefreshUserData(); | |
if (refreshedData.Authenticated) { | |
dispatch(setUserData(refreshedData)); | |
} | |
} | |
}, []) | |
console.log("Is Loading", isLoading); | |
return | |
isLoading | |
? <div>Loading ... </div> | |
: ( | |
<div> | |
<AdminMenu></AdminMenu> | |
<Switch> | |
<Route path="/search"> | |
<SearchPage /> | |
</Route> | |
<Route path="/privacy"> | |
<PrivacyPage /> | |
</Route> | |
<Route path="/Details/:id"> | |
<UavDetailsPage /> | |
</Route> | |
<Route path="/Account/ForgotPassword"> | |
<ForgotPasswordPage></ForgotPasswordPage> | |
</Route> | |
<Route path="/Account/ResetPassword"> | |
<ResetPasswordPage></ResetPasswordPage> | |
</Route> | |
<Route path="/Account/RequestAccount"> | |
<RequestAccountPage></RequestAccountPage> | |
</Route> | |
<Route path="/Admin/AccountRequests"> | |
<RequestReviewPage></RequestReviewPage> | |
</Route> | |
<Route path="/Admin/SuasRequest/Details/:id"> | |
<NewSuasRequestDetails></NewSuasRequestDetails> | |
</Route> | |
{/* User management - give roles */} | |
<Route path="/Admin/Validator"> | |
<SUASRequests></SUASRequests> | |
</Route> | |
<Route path="/Landing"> | |
<LandingPage /> | |
</Route> | |
<Route path="/"> | |
<LoginPage /> | |
</Route> | |
</Switch> | |
</div> | |
) | |
} | |
export default RouteController; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment