import { useState } from "react"; import { TimeReport } from "../Types/TimeReport"; import { api } from "../API/API"; import { useNavigate } from "react-router-dom"; import Button from "./Button"; export default function NewTimeReport(): JSX.Element { const [week, setWeek] = useState(""); const [development, setDevelopment] = useState("0"); const [meeting, setMeeting] = useState("0"); const [administration, setAdministration] = useState("0"); const [ownwork, setOwnWork] = useState("0"); const [studies, setStudies] = useState("0"); const [testing, setTesting] = useState("0"); const handleNewTimeReport = async (): Promise => { const newTimeReport: TimeReport = { week, development, meeting, administration, ownwork, studies, testing, }; await Promise.resolve(); // await api.registerTimeReport(newTimeReport); This needs to be implemented! }; const navigate = useNavigate(); return ( <>
{ if (week === "") { alert("Please enter a week number"); e.preventDefault(); return; } e.preventDefault(); void handleNewTimeReport(); navigate("/project"); }} >
{ const weekNumber = e.target.value.split("-W")[1]; setWeek(weekNumber); }} onKeyDown={(event) => { event.preventDefault(); }} onPaste={(event) => { event.preventDefault(); }} />
Activity Total Time (min)
Development { setDevelopment(e.target.value); }} onKeyDown={(event) => { const keyValue = event.key; if (!/\d/.test(keyValue) && keyValue !== "Backspace") event.preventDefault(); }} />
Meeting { setMeeting(e.target.value); }} onKeyDown={(event) => { const keyValue = event.key; if (!/\d/.test(keyValue) && keyValue !== "Backspace") event.preventDefault(); }} />
Administration { setAdministration(e.target.value); }} onKeyDown={(event) => { const keyValue = event.key; if (!/\d/.test(keyValue) && keyValue !== "Backspace") event.preventDefault(); }} />
Own Work { setOwnWork(e.target.value); }} onKeyDown={(event) => { const keyValue = event.key; if (!/\d/.test(keyValue) && keyValue !== "Backspace") event.preventDefault(); }} />
Studies { setStudies(e.target.value); }} onKeyDown={(event) => { const keyValue = event.key; if (!/\d/.test(keyValue) && keyValue !== "Backspace") event.preventDefault(); }} />
Testing { setTesting(e.target.value); }} onKeyDown={(event) => { const keyValue = event.key; if (!/\d/.test(keyValue) && keyValue !== "Backspace") event.preventDefault(); }} />
); }