diff --git a/SerpentRace_Frontend/src/components/Navbar/Navbar.jsx b/SerpentRace_Frontend/src/components/Navbar/Navbar.jsx index 644e1c8f..d0926eac 100644 --- a/SerpentRace_Frontend/src/components/Navbar/Navbar.jsx +++ b/SerpentRace_Frontend/src/components/Navbar/Navbar.jsx @@ -1,41 +1,75 @@ import React, { useState } from "react" import Logo from "../../assets/pictures/Logo" -import About from "../../pages/About/About" -import Home from "../../pages/Landing/Home" +import { Link, useNavigate } from "react-router-dom" const navLinkClass = "px-3 py-2 rounded-lg text-white transition-all duration-200 hover:bg-white/10" const Navbar = () => { const [menuOpen, setMenuOpen] = useState(false) + const navigate = useNavigate() + // Check if authLevel and username exist in localStorage + const isLoggedIn = Boolean(localStorage.getItem("authLevel") && localStorage.getItem("username")) + + // Logout function: töröljük az adatokat és navigálunk a /login-ra (SPA, nincs reload) + const handleLogout = () => { + localStorage.removeItem("authLevel") + localStorage.removeItem("username") + navigate("/login") + } return ( - diff --git a/SerpentRace_Frontend/src/pages/Home/Home.jsx b/SerpentRace_Frontend/src/pages/Home/Home.jsx deleted file mode 100644 index 3ba196e1..00000000 --- a/SerpentRace_Frontend/src/pages/Home/Home.jsx +++ /dev/null @@ -1,46 +0,0 @@ -// src/pages/Home/Home.jsx -// Régi PlayMenu-s oldal, "Home" néven - -import { useState, useEffect } from "react" -import { useNavigate } from "react-router-dom" -import Navbar from "../../components/Navbar/Navbar" -import Footer from "../../components/Footer/Footer.jsx" -import Background from "../../assets/backgrounds/Background.jsx" -import PlayMenu from "../../components/Landingpage/PlayMenu.jsx" - -export default function Home() { - const navigate = useNavigate() - - useEffect(() => { - const username = localStorage.getItem("username") - const authLevel = localStorage.getItem("authLevel") - if (!username || !authLevel) { - navigate("/login") - } - }, [navigate]) - - // Dummy callbackok és user példa - const handleJoinGame = (code) => { - alert(`Csatlakozás játékhoz: ${code}`) - } - const handleCreateGame = () => { - alert("Új játék létrehozása") - } - const user = { name: localStorage.getItem("username") } - - return ( -
-
- -
-
- -
-
- - {/* Ide jöhetnek további szekciók, ha szeretnél még tartalmat */} -
-
- ) -} diff --git a/SerpentRace_Frontend/src/pages/Landing/Home.jsx b/SerpentRace_Frontend/src/pages/Landing/Home.jsx index 10afcc02..1bf2c2fe 100644 --- a/SerpentRace_Frontend/src/pages/Landing/Home.jsx +++ b/SerpentRace_Frontend/src/pages/Landing/Home.jsx @@ -1,13 +1,20 @@ // src/pages/Home/Home.jsx // Régi PlayMenu-s oldal, "Home" néven -import { useState } from "react" -import Navbar from "../../components/Navbar/Navbar.jsx" +import { useState, useEffect } from "react" +import { useNavigate } from "react-router-dom" +import Navbar from "../../components/Navbar/Navbar" import Footer from "../../components/Footer/Footer.jsx" import Background from "../../assets/backgrounds/Background.jsx" import PlayMenu from "../../components/Landingpage/PlayMenu.jsx" export default function Home() { + const navigate = useNavigate() + const user = localStorage.getItem("username") + + // Logoljuk ki a user-t minden renderkor + console.log("Home user:", user) + // Dummy callbackok és user példa const handleJoinGame = (code) => { alert(`Csatlakozás játékhoz: ${code}`) @@ -15,7 +22,14 @@ export default function Home() { const handleCreateGame = () => { alert("Új játék létrehozása") } - const user = { name: "Teszt Elek" } + const userObj = { name: user } + + // Ha nincs bejelentkezett felhasználó a localStorage-ben, átirányítjuk a /login oldalra + useEffect(() => { + if (!user) { + navigate("/login") + } + }, [navigate, user]) return (
@@ -26,7 +40,7 @@ export default function Home() {
- + {/* Ide jöhetnek további szekciók, ha szeretnél még tartalmat */}