2026-06-11 22:23:39 +02:00
|
|
|
import { Link, useNavigate } from 'react-router-dom';
|
|
|
|
|
import { useAuth } from '../context/AuthContext';
|
2026-03-16 16:43:17 +01:00
|
|
|
import '../styles/navbar.css';
|
|
|
|
|
|
|
|
|
|
export default function Navbar() {
|
2026-06-11 22:23:39 +02:00
|
|
|
const { user, logout } = useAuth();
|
|
|
|
|
const navigate = useNavigate();
|
|
|
|
|
|
|
|
|
|
function handleLogout() {
|
|
|
|
|
logout();
|
|
|
|
|
navigate('/login');
|
|
|
|
|
}
|
|
|
|
|
|
2026-03-16 16:43:17 +01:00
|
|
|
return (
|
|
|
|
|
<nav className="navbar">
|
|
|
|
|
<Link to="/" className="navbar__logo">Biblio</Link>
|
|
|
|
|
|
|
|
|
|
<ul className="navbar__links">
|
|
|
|
|
<li><Link to="/">Accueil</Link></li>
|
|
|
|
|
<li><Link to="/books">Catalogue</Link></li>
|
2026-06-11 22:23:39 +02:00
|
|
|
{user && <li><Link to="/orders">Commandes</Link></li>}
|
|
|
|
|
{user && <li><Link to="/profile">Mon compte</Link></li>}
|
|
|
|
|
{user?.role === 'admin' && <li><Link to="/customers">Clients</Link></li>}
|
2026-03-16 16:43:17 +01:00
|
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
<div className="navbar__actions">
|
2026-06-11 22:23:39 +02:00
|
|
|
{user ? (
|
|
|
|
|
<>
|
|
|
|
|
<span>{user.username} ({user.role})</span>
|
|
|
|
|
<button onClick={handleLogout}>Déconnexion</button>
|
|
|
|
|
</>
|
|
|
|
|
) : (
|
|
|
|
|
<Link to="/login"><button>Connexion</button></Link>
|
|
|
|
|
)}
|
2026-03-16 16:43:17 +01:00
|
|
|
</div>
|
|
|
|
|
</nav>
|
|
|
|
|
);
|
|
|
|
|
}
|