diff --git a/dashboard/src/states/Dashboard/components/Header/Header.jsx b/dashboard/src/states/Dashboard/components/Header/Header.jsx index be24c58..8c403af 100644 --- a/dashboard/src/states/Dashboard/components/Header/Header.jsx +++ b/dashboard/src/states/Dashboard/components/Header/Header.jsx @@ -1,8 +1,8 @@ -import {AppBar, Avatar, IconButton, Stack, Toolbar, Typography} from "@mui/material"; +import {AppBar, Avatar, IconButton, MenuItem, Select, Stack, Toolbar, Typography} from "@mui/material"; import {Menu} from "@mui/icons-material"; import {useContext, useEffect, useState} from "react"; import {projectSidebar, sidebar} from "@/common/routes"; -import {useLocation} from "react-router-dom"; +import {useLocation, useNavigate} from "react-router-dom"; import {ProjectContext} from "@/states/Dashboard/contexts/Project"; import {UserContext} from "@contexts/User"; import AccountMenu from "@/states/Dashboard/components/Header/components/AccountMenu"; @@ -11,7 +11,8 @@ const drawerWidth = 260; export const Header = ({toggleOpen}) => { const location = useLocation(); - const {currentProject} = useContext(ProjectContext); + const navigate = useNavigate(); + const {currentProject, projects, setCurrentProject} = useContext(ProjectContext); const {user} = useContext(UserContext); const [menuOpen, setMenuOpen] = useState(false); @@ -27,6 +28,15 @@ export const Header = ({toggleOpen}) => { return "Start"; } + const switchProject = (project) => { + if (!project) return; + const path = location.pathname.replace(currentProject.id, project.id); + setCurrentProject(project); + + navigate(-1); + setTimeout(() => navigate(path), 100); + } + return ( <> @@ -40,6 +50,12 @@ export const Header = ({toggleOpen}) => { {getTitleByPath()} + + + setMenuOpen(true)} id="menu" alignItems="center" direction="row" spacing={1}>