Merge remote-tracking branch 'origin/main' into AjoutPoints
This commit is contained in:
commit
f868effc9a
@ -14,6 +14,7 @@ import Sidebar from "./pages/Admin/sidebar.jsx";
|
|||||||
import User from "./pages/Admin/User.jsx";
|
import User from "./pages/Admin/User.jsx";
|
||||||
import Dashboard from "./pages/Admin/Dashboard.jsx";
|
import Dashboard from "./pages/Admin/Dashboard.jsx";
|
||||||
import AdminObjet from "./pages/Admin/AdminObjet.jsx";
|
import AdminObjet from "./pages/Admin/AdminObjet.jsx";
|
||||||
|
import ProtectedRoute from './ProtectedRoute.jsx'; // Correction de l'import
|
||||||
|
|
||||||
function App() {
|
function App() {
|
||||||
return (
|
return (
|
||||||
@ -24,17 +25,17 @@ function App() {
|
|||||||
<Routes>
|
<Routes>
|
||||||
<Route path="/" element={<Home />} />
|
<Route path="/" element={<Home />} />
|
||||||
<Route path="/about" element={<About />} />
|
<Route path="/about" element={<About />} />
|
||||||
<Route path="/gestion" element={<Gestion />} />
|
<Route path="/gestion" element={<ProtectedRoute element={<Gestion />} />} />
|
||||||
<Route path="/gestionObjets" element={<ObjectManagement />} />
|
<Route path="/gestionObjets" element={<ProtectedRoute element={<ObjectManagement />} />} />
|
||||||
<Route path="/objet" element={<Objet />} />
|
<Route path="/objet" element={<ProtectedRoute element={<Objet />} />} />
|
||||||
<Route path="/signup" element={<Signup />} />
|
<Route path="/signup" element={<Signup />} />
|
||||||
<Route path="/login" element={<Login />} />
|
<Route path="/login" element={<Login />} />
|
||||||
<Route path="/ajouterObjet" element={<AddObject />} />
|
<Route path="/ajouterObjet" element={<ProtectedRoute element={<AddObject />} />} />
|
||||||
<Route path="/settings" element={<Settings />} />
|
<Route path="/settings" element={<Settings />} />
|
||||||
<Route path="/sidebar" element={<Sidebar />} />
|
<Route path="/sidebar" element={<Sidebar />} />
|
||||||
<Route path="/user" element={<User />} />
|
<Route path="/user" element={<User />} />
|
||||||
<Route path="/dashboard" element={<Dashboard />} />
|
<Route path="/dashboard" element={<Dashboard />} />
|
||||||
<Route path="/adminobjet" element={<AdminObjet />} />
|
<Route path="/adminobjet" element={<ProtectedRoute element={<AdminObjet />} />} />
|
||||||
</Routes>
|
</Routes>
|
||||||
</div>
|
</div>
|
||||||
</Router>
|
</Router>
|
||||||
|
|||||||
16
Front-end/src/ProtectedRoute.jsx
Normal file
16
Front-end/src/ProtectedRoute.jsx
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
import { useAuth } from './AuthContext'; // Utilisation du contexte d'authentification
|
||||||
|
import { Navigate } from 'react-router-dom'; // Utilisation de React Router pour la redirection
|
||||||
|
|
||||||
|
function ProtectedRoute({ element }) {
|
||||||
|
const { token } = useAuth(); // Vérifier si un token existe, donc si l'utilisateur est authentifié
|
||||||
|
|
||||||
|
// Si l'utilisateur n'est pas authentifié, redirigez-le vers la page de login
|
||||||
|
if (!token) {
|
||||||
|
return <Navigate to="/login" />;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Si l'utilisateur est authentifié, permettez l'accès à la route
|
||||||
|
return element;
|
||||||
|
}
|
||||||
|
|
||||||
|
export default ProtectedRoute; // Export de la fonction
|
||||||
Loading…
Reference in New Issue
Block a user