Skip to content
Snippets Groups Projects
Commit ba9a1115 authored by Bjarke Madsen's avatar Bjarke Madsen
Browse files

add back in admin requirement for earlier release

parent 9b94e463
No related branches found
No related tags found
No related merge requests found
import React, { ReactElement } from "react";
import React, { ReactElement, useEffect } from "react";
import { createBrowserRouter, RouterProvider } from "react-router-dom";
import Landing from "./pages/Landing";
import ExternalPageNavBar from "./shared/ExternalPageNavBar";
......@@ -90,6 +90,26 @@ const router = createBrowserRouter([
function App(): ReactElement {
const [isAdmin, setIsAdmin] = React.useState(false);
useEffect(() => {
// we have to do this because the user provider is not available before rendering other parts of the app
// so fetch the user and redirect if not admin as a temporary measure, until it's "generally available"
fetch('/api/user/').then(data => data.json()).then(user => {
setIsAdmin(user.permissions.admin)
if (!user.permissions.admin) {
window.location.replace('/survey')
} else {
console.log('Admin user, not redirecting')
}
}).catch(() => {
window.location.replace('/survey')
})
}, [])
if (!isAdmin) {
return <></>
}
return (
<div className="app">
<Providers>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment