Actually add user on click

This commit is contained in:
Regalijan 2023-11-08 13:32:44 -05:00
parent d2b5de15fd
commit 229facbc7b
Signed by: regalijan
GPG Key ID: 5D4196DA269EF520

View File

@ -22,6 +22,7 @@ import { useEffect, useState } from "react";
export default function (props: { isOpen: boolean; onClose: () => void }) { export default function (props: { isOpen: boolean; onClose: () => void }) {
const [mods, setMods] = useState([]); const [mods, setMods] = useState([]);
const [userToAdd, setUserToAdd] = useState("");
const toast = useToast(); const toast = useToast();
useEffect(() => { useEffect(() => {
@ -45,6 +46,16 @@ export default function (props: { isOpen: boolean; onClose: () => void }) {
}, [props.isOpen]); }, [props.isOpen]);
async function addUser(user: string) { async function addUser(user: string) {
if (!user || !user.match(/^\d{17,19}$/)) {
toast({
description: "Please check your input and try again",
status: "error",
title: "Invalid user",
});
return;
}
const addResp = await fetch("/api/gme/add", { const addResp = await fetch("/api/gme/add", {
body: JSON.stringify({ user }), body: JSON.stringify({ user }),
headers: { headers: {
@ -133,7 +144,9 @@ export default function (props: { isOpen: boolean; onClose: () => void }) {
</TableContainer> </TableContainer>
<HStack mt="8px"> <HStack mt="8px">
<Input maxLength={19} placeholder="1234567890987654321" /> <Input maxLength={19} placeholder="1234567890987654321" />
<Button ml="8px">Add</Button> <Button ml="8px" onClick={async () => await addUser(userToAdd)}>
Add
</Button>
</HStack> </HStack>
</ModalBody> </ModalBody>
</ModalContent> </ModalContent>