From f9eba3d85747a3670f7c27fb1d2bd371d39994f7 Mon Sep 17 00:00:00 2001 From: Justin Edmund Date: Wed, 2 Feb 2022 21:42:36 -0800 Subject: [PATCH] Fix Menu authenticated status --- components/Header/index.tsx | 10 ++++++---- components/HeaderMenu/index.tsx | 9 +++------ 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/components/Header/index.tsx b/components/Header/index.tsx index 44bf4269..0ae20284 100644 --- a/components/Header/index.tsx +++ b/components/Header/index.tsx @@ -12,7 +12,7 @@ import './index.scss' interface Props {} const Header = (props: Props) => { - const { editable, setEditable, setAuthenticated } = useContext(AppContext) + const { editable, setEditable, authenticated, setAuthenticated } = useContext(AppContext) const [username, setUsername] = useState(undefined) const [cookies, _, removeCookie] = useCookies(['user']) @@ -21,12 +21,14 @@ const Header = (props: Props) => { useEffect(() => { if (cookies.user) { + setAuthenticated(true) setUsername(cookies.user.username) console.log(`Logged in as user "${cookies.user.username}"`) } else { + setAuthenticated(false) console.log('You are currently not logged in.') } - }, [cookies]) + }, [cookies, setUsername, setAuthenticated]) function copyToClipboard() { const el = document.createElement('input') @@ -60,8 +62,8 @@ const Header = (props: Props) => {
{ (username) ? - : - + : + }
diff --git a/components/HeaderMenu/index.tsx b/components/HeaderMenu/index.tsx index 14ee6cd4..60db0daa 100644 --- a/components/HeaderMenu/index.tsx +++ b/components/HeaderMenu/index.tsx @@ -6,8 +6,6 @@ import Link from 'next/link' import LoginModal from '~components/LoginModal' import SignupModal from '~components/SignupModal' -import AppContext from '~context/AppContext' - import { useModal as useSignupModal } from '~utils/useModal' import { useModal as useLoginModal } from '~utils/useModal' import { useModal as useAboutModal } from '~utils/useModal' @@ -16,13 +14,12 @@ import AboutModal from '~components/AboutModal' interface Props { + authenticated: boolean, username?: string, - logout: () => void + logout?: () => void } const HeaderMenu = (props: Props) => { - const { authenticated } = useContext(AppContext) - const { open: signupOpen, openModal: openSignupModal, closeModal: closeSignupModal } = useSignupModal() const { open: loginOpen, openModal: openLoginModal, closeModal: closeLoginModal } = useLoginModal() const { open: aboutOpen, openModal: openAboutModal, closeModal: closeAboutModal } = useAboutModal() @@ -83,7 +80,7 @@ const HeaderMenu = (props: Props) => { ) } - return (authenticated) ? authItems() : unauthItems() + return (props.authenticated) ? authItems() : unauthItems() } export default HeaderMenu \ No newline at end of file