From 0a3b9703c96fe1e2b4e2ee0c14e4c282a66cafca Mon Sep 17 00:00:00 2001 From: s87777 <s87777@bht-berlin.de> Date: Thu, 18 Jan 2024 11:34:05 +0100 Subject: [PATCH] AdminSides --- src/App.tsx | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/src/App.tsx b/src/App.tsx index a5c5025..fef217e 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,4 +1,4 @@ -import { Route, Routes} from "react-router-dom"; +import { Route, Routes } from "react-router-dom"; import PageShopper from "./components/PageShopper"; import PageShopList from "./components/PageShopList"; import PageShopItem from "./components/PageShopItem"; @@ -17,19 +17,24 @@ ReactGA.initialize(TRACKING_ID); function App() { const jwt = retrieveJWT(); const [loginInfo, setLoginInfo] = React.useState(getLoginInfoFromJWT(jwt)); - return ( + const isAdmin = loginInfo && loginInfo.roles === "a"; + return ( <div> - <LoginContext.Provider value={{loginInfo, setLoginInfo}}> + <LoginContext.Provider value={{ loginInfo, setLoginInfo }}> <Header /> - <Routes> - <Route path="*" element={<PageShopper />}/> - <Route path="/shopper" element={<PageShopper />}/> - <Route path="/shoplist/:shoplistID" element={<PageShopList />}/> - <Route path="/shopitem/:shopitemID" element={<PageShopItem />}/> - <Route path="/admin" element={<PageAdmin />}/> - <Route path="/prefs" element={<PagePrefs />}/> - <Route path="/userManagment" element={<PageUsermanagment />}/> - </Routes> + <Routes> + <Route path="*" element={<PageShopper />} /> + <Route path="/shopper" element={<PageShopper />} /> + <Route path="/shoplist/:shoplistID" element={<PageShopList />} /> + <Route path="/shopitem/:shopitemID" element={<PageShopItem />} /> + <Route path="/prefs" element={<PagePrefs />} /> + {isAdmin && ( + <> + <Route path="/admin" element={<PageAdmin />} /> + <Route path="/userManagment" element={<PageUsermanagment />} /> + </> + )} + </Routes> </LoginContext.Provider> </div> ); -- GitLab