Ignore:
Timestamp:
01/19/25 23:18:37 (4 months ago)
Author:
Aleksandar Panovski <apano77@…>
Branches:
main
Children:
f5b256e
Parents:
db39d9e
Message:

Done with stupid timeslots

File:
1 edited

Legend:

Unmodified
Added
Removed
  • my-react-app/src/components/Header.js

    rdb39d9e r8ca35dc  
    11import React from 'react';
    2 import { Link } from 'react-router-dom';
     2import { Link, useNavigate } from 'react-router-dom';
    33
    44const Header = () => {
     5    const navigate = useNavigate();
     6
     7    // Check if the user is logged in by looking for a token in localStorage
     8    const isLoggedIn = localStorage.getItem('token');
     9
     10    const handleLogout = () => {
     11        // Clear the token from localStorage
     12        localStorage.removeItem('token');
     13        // Redirect to the home page or login page after logging out
     14        navigate('/login');
     15    };
     16
    517    return (
    618        <header className="header navbar navbar-expand-lg navbar-light bg-light">
     
    1527                        </li>
    1628                        <li className="nav-item">
    17                             <Link className="nav-link" to="/customers">Customers</Link>
    18                         </li>
    19                         <li className="nav-item">
    20                             <Link className="nav-link" to="/customers/add">Add Customer</Link>
    21                         </li>
    22                         <li className="nav-item">
    2329                            <Link className="nav-link" to="/restaurants">Restaurants</Link>
    2430                        </li>
     
    2632                            <Link className="nav-link" to="/reservations">Reservations</Link>
    2733                        </li>
     34                        <li className="nav-item">
     35                            <Link className="nav-link" to="/reservations-past">Reservation history</Link>
     36                        </li>
    2837                        <form className="form-inline mt-2 mt-md-0 ml-3">
    29                             <Link className="btn btn-outline-info my-2 my-sm-0" to={"/login"}>Login</Link>
     38                            {isLoggedIn ? (
     39                                <button className="btn btn-outline-danger my-2 my-sm-0" onClick={handleLogout}>Logout</button>
     40                            ) : (
     41                                <Link className="btn btn-outline-info my-2 my-sm-0" to="/login">Login</Link>
     42                            )}
    3043                        </form>
    3144                    </ul>
Note: See TracChangeset for help on using the changeset viewer.