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