diff --git a/frontend/src/Pages/LoginPage.tsx b/frontend/src/Pages/LoginPage.tsx index e6d14bc..f58f3e0 100644 --- a/frontend/src/Pages/LoginPage.tsx +++ b/frontend/src/Pages/LoginPage.tsx @@ -1,71 +1,29 @@ -import Button from "../Components/Button"; import Logo from "/src/assets/Logo.svg"; import "./LoginPage.css"; -import { FormEvent, useEffect, useState } from "react"; -import { NewUser } from "../Types/Users"; -import { useNavigate } from "react-router-dom"; +import { Dispatch, FormEvent, SetStateAction, useState } from "react"; +import BackgroundAnimation from "../Components/BackgroundAnimation"; +import LoginField from "../Components/LoginField"; +import LoginCheck from "../Components/LoginCheck"; -const PreloadBackgroundAnimation = (): JSX.Element => { - useEffect(() => { - const images = [ - "src/assets/1.jpg", - "src/assets/2.jpg", - "src/assets/3.jpg", - "src/assets/4.jpg", - ]; - - // Pre-load images - for (const i of images) { - console.log(i); - } - - // Start animation - document.body.style.animation = "backgroundTransition 30s infinite"; - }, []); - - return <>; -}; - -function LoginPage(): JSX.Element { - //Example users for testing without backend, remove when using backend - const admin: NewUser = { - userName: "admin", - password: "123", - }; - const pmanager: NewUser = { - userName: "pmanager", - password: "123", - }; - const user: NewUser = { - userName: "user", - password: "123", - }; - - const navigate = useNavigate(); +function LoginPage(props: { + setAuthority: Dispatch>; +}): JSX.Element { + const [username, setUsername] = useState(""); + const [password, setPassword] = useState(""); /* On submit (enter or button click) check if username and password match any user and if so, redirect to correct page */ function handleSubmit(event: FormEvent): void { event.preventDefault(); - //TODO: Compare with db instead when finished - if (username === admin.userName && password === admin.password) { - navigate("/admin-menu"); - } else if ( - username === pmanager.userName && - password === pmanager.password - ) { - navigate("/PM-project-page"); - } else if (username === user.userName && password === user.password) { - navigate("/your-projects"); - } + props.setAuthority((prevAuth) => { + prevAuth = LoginCheck({ username: username, password: password }); + return prevAuth; + }); } - const [username, setUsername] = useState(""); - const [password, setPassword] = useState(""); - return ( <> - +
-
- { - setUsername(e.target.value); - }} - /> - { - setPassword(e.target.value); - }} - /> -