diff --git a/app/routes/et-members.tsx b/app/routes/et-members.tsx new file mode 100644 index 0000000..c60339f --- /dev/null +++ b/app/routes/et-members.tsx @@ -0,0 +1,74 @@ +import { useLoaderData } from "@remix-run/react"; +import { + Container, + Heading, + Link, + Table, + TableContainer, + Tbody, + Td, + Th, + Thead, + Tr, +} from "@chakra-ui/react"; + +export async function loader({ context }: { context: RequestContext }) { + const etData = await context.env.D1.prepare( + "SELECT * FROM et_members;", + ).all(); + + if (etData.error) + throw new Response(null, { + status: 500, + }); + + return etData.results as { [k: string]: any }[]; +} + +export default function () { + async function removeMember(id: string) { + await fetch("/api/events-team/team-members/user", { + body: JSON.stringify({ id }), + headers: { + "content-type": "application/json", + }, + method: "DELETE", + }); + + location.reload(); + } + + const memberData = useLoaderData(); + + return ( + + Events Team Members + + + + + + + + + + + + {memberData.map((member) => ( + + + + + + + ))} + +
Discord IDNameRoblox IDRemove
{member.id}{member.name}{member.roblox_id} + removeMember(member.id)}> + Remove + +
+
+
+ ); +}