import { Button, Container, Heading, HStack, Input, Radio, RadioGroup, Textarea, useToast, } from "@chakra-ui/react"; import { useEffect, useState } from "react"; import Success from "../../components/Success.js"; export default function () { const toast = useToast(); const currentDate = new Date(); const currentMonth = currentDate.getUTCMonth() + 1; const currentYear = currentDate.getUTCFullYear(); const [datePickerMax, setDatePickerMax] = useState(""); const [datePickerMin, setDatePickerMin] = useState(""); const [eventDay, setEventDay] = useState("0"); const [eventDetails, setEventDetails] = useState(""); const [eventType, setEventType] = useState(""); const [riddleAnswer, setRiddleAnswer] = useState(""); const [submitSuccess, setSubmitSuccess] = useState(false); useEffect(() => { currentDate.setUTCDate(0); setDatePickerMin(`${currentYear}-${currentMonth}-01`); setDatePickerMax( `${currentYear}-${currentMonth}-${currentDate.getUTCDate()}`, ); }, []); async function submit() { let eventResp: Response; try { eventResp = await fetch("/api/events-team/events/new", { body: JSON.stringify({ answer: riddleAnswer || undefined, day: eventDay, details: eventDetails, type: eventType, }), headers: { "content-type": "application/json", }, method: "POST", }); } catch { toast({ description: "Please check your internet and try again", isClosable: true, status: "error", title: "Unknown error", }); return; } if (!eventResp.ok) { let errorMessage = "Unknown error"; try { errorMessage = ((await eventResp.json()) as { error: string }).error; } catch {} toast({ description: errorMessage, isClosable: true, status: "error", title: "Oops!", }); return; } setSubmitSuccess(true); await new Promise((r) => setTimeout(r, 7500)); location.assign("/events-team"); } return submitSuccess ? ( ) : ( Book an Event Event Type FoTD Gamenight QoTD RoTW
Event Date setEventDay(e.target.value.split("-")[2])} type="date" /> Event Details