Files
2026-DEV-BUT3/my-library/src/components/Navbar.jsx
T

39 lines
1.2 KiB
React
Raw Normal View History

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>}
2026-06-11 23:08:21 +02:00
{user?.role === 'user' && <li><Link to="/reservations">Mes réservations</Link></li>}
2026-06-11 22:23:39 +02:00
{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>
);
}