diff --git a/frontend/src/components/admin/servers/ServerPage.tsx b/frontend/src/components/admin/servers/ServerPage.tsx index 81132e7..e478669 100644 --- a/frontend/src/components/admin/servers/ServerPage.tsx +++ b/frontend/src/components/admin/servers/ServerPage.tsx @@ -23,6 +23,7 @@ import { Button } from "@/components/ui/button"; import { getSettings } from "@/utils/querys/settings"; import { toast } from "sonner"; import axios from "axios"; +import { useEffect } from "react"; //import { useState } from "react"; export type Servers = { @@ -46,14 +47,35 @@ export default function ServerPage() { getServers(token ?? "") ); - const adminModule = modules.filter((n) => n.name === "admin"); - const userLevel = - user?.roles?.filter((r) => r.module_id === adminModule[0].module_id) || - []; + // const adminModule = modules.filter((n) => n.name === "admin"); + // const userLevel = + // user?.roles?.filter((r) => r.module_id === adminModule[0].module_id) || + // []; - if (!adminModule[0]?.roles?.includes(userLevel[0]?.role)) { - router.navigate({ to: "/" }); - } + // if (!adminModule[0]?.roles?.includes(userLevel[0]?.role)) { + // console.log("Something failed"); + // //router.navigate({ to: "/" }); + // } + + useEffect(() => { + if (!user || modules.length === 0) return; + + const adminModule = modules.find((n) => n.name === "admin"); + if (!adminModule) { + console.log("no module loaded"); + //router.navigate({ to: "/" }); + return; + } + + const userLevel = + user?.roles?.filter((r) => r.module_id === adminModule.module_id) || + []; + + if (!adminModule.roles?.includes(userLevel[0]?.role)) { + console.log("Something failed"); + //router.navigate({ to: "/" }); + } + }, [modules, user, router]); if (isError) { return