oops nevermind LOL
This commit is contained in:
@@ -7,13 +7,11 @@ import API from "./API";
|
||||
import { ProtectPortal } from "./types";
|
||||
|
||||
const Protect: ProtectPortal = ({ children, redirect = '', accessRules = null }) => {
|
||||
const [view, setView] = useState(<Page><h1>Loading...</h1></Page>);
|
||||
const { user, token } = useAuthContext();
|
||||
const navigate = useNavigate();
|
||||
|
||||
useEffect(() => {
|
||||
if (!user || !token) {
|
||||
setView(
|
||||
return (
|
||||
<AccessForbidden>
|
||||
<>
|
||||
<h2>Hi there! You don't look too familiar.</h2>
|
||||
@@ -22,13 +20,11 @@ const Protect: ProtectPortal = ({ children, redirect = '', accessRules = null })
|
||||
</>
|
||||
</AccessForbidden>
|
||||
)
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if (accessRules !== null) {
|
||||
if (accessRules.mustBeRecipinAdmin && !(user.isadmin)) {
|
||||
setView(
|
||||
if (accessRules.mustBeRecipinAdmin && !(user?.isadmin)) {
|
||||
return (
|
||||
<AccessForbidden>
|
||||
<>
|
||||
<h2>This page requires administrator access.</h2>
|
||||
@@ -38,10 +34,12 @@ const Protect: ProtectPortal = ({ children, redirect = '', accessRules = null })
|
||||
)
|
||||
}
|
||||
}
|
||||
}, [user, token])
|
||||
|
||||
|
||||
return view;
|
||||
return (
|
||||
<Page>
|
||||
{ children }
|
||||
</Page>
|
||||
)
|
||||
}
|
||||
|
||||
export default Protect;
|
||||
@@ -23,7 +23,7 @@ export interface AccessRules {
|
||||
|
||||
export interface ProtectParams extends PortalBase {
|
||||
redirect?: string
|
||||
accessRules?: AccessRules | null
|
||||
accessRules?: Partial<AccessRules> | null
|
||||
}
|
||||
|
||||
interface UserCardProps extends PortalBase {
|
||||
|
||||
Reference in New Issue
Block a user