import "./styles/App.css"; import { Link, useNavigate } from 'react-router-dom'; import { Outlet } from "react-router-dom"; import { SessionContext, destroySessionCookie, getSessionCookie } from "./contexts/session"; import { useState, useEffect, useContext } from "react"; import { usePoll } from "./hooks/usePoll"; export default function App() { const [session, setSession] = useState(getSessionCookie()); const navigate = useNavigate(); usePoll(); // Redirect to login if session is undefined useEffect( () => { setSession(getSessionCookie()); if (session === undefined) { navigate("/login"); } }, [session, navigate] ); return ( <>
) } function Navbar() { const linkStyle = { textDecoration: 'none', color: 'black', background: '#B1D4E0', padding: '8px 16px', borderRadius: '5px', // margin: '0 5px' }; const session = useContext(SessionContext); const logout = () => { destroySessionCookie(); window.location.reload(); } const links = session ? ( <>
PeerNotes Logo Upload Search
Logout
): ( Login ) return ( ); }