Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Add inactivity notices to mod queue dropdown
  • Loading branch information
regalijan committed Oct 19, 2023
1 parent db7e932 commit 8435cbd
Showing 1 changed file with 26 additions and 23 deletions.
49 changes: 26 additions & 23 deletions app/routes/mod-queue.tsx
Expand Up @@ -14,7 +14,7 @@ import {
useBreakpointValue,
useDisclosure,
useToast,
VStack,
VStack
} from "@chakra-ui/react";
import { type ReactElement, useEffect, useState } from "react";
import AppealCard from "../../components/AppealCard.js";
Expand All @@ -31,38 +31,40 @@ export async function loader({ context }: { context: RequestContext }) {

if (!currentUser)
throw new Response(null, {
status: 401,
status: 401
});

const departments = {
DM: 1 << 2,
ET: 1 << 3,
FM: 1 << 10,
WM: 1 << 9,
WM: 1 << 9
};

const newItemPermissions = {
game_ban: [1 << 5],
inactivity: [1 << 2, 1 << 9, 1 << 10],
infraction: [1 << 0, 1 << 2, 1 << 6, 1 << 7],
infraction: [1 << 0, 1 << 2, 1 << 6, 1 << 7]
};

const newItemNames: { [k: string]: string } = {
game_ban: "Game Ban",
inactivity: "Inactivity Notice",
infraction: "Infraction",
infraction: "Infraction"
};

const typePermissions = {
appeal: [1 << 0, 1 << 1],
gma: [1 << 5],
report: [1 << 5],
inactivity: [1 << 4, 1 << 6, 1 << 7, 1 << 11, 1 << 12],
report: [1 << 5]
};

const typeNames: { [k: string]: string } = {
appeal: "Discord Appeals",
gma: "Game Appeals",
report: "Game Reports",
inactivity: "Inactivity Notices",
report: "Game Reports"
};

const allowedNewItems = [];
Expand All @@ -80,32 +82,32 @@ export async function loader({ context }: { context: RequestContext }) {

if (!allowedTypes.length)
throw new Response(null, {
status: 403,
status: 403
});

return {
can_edit_ban_users: [
"165594923586945025",
"289372404541554689",
"396347223736057866",
"396347223736057866"
].includes(currentUser.id),
departments: Object.entries(departments)
.filter((d) => d[1] & currentUser.permissions)
.map((arr) => arr[0]),
entry_types: allowedTypes,
item_types: allowedNewItems,
item_types: allowedNewItems
};
}

export function meta() {
return [
{
title: "Moderation Queue - Car Crushers",
},
title: "Moderation Queue - Car Crushers"
}
];
}

export default function () {
export default function() {
const pageProps = useLoaderData<typeof loader>();
const isDesktop = useBreakpointValue({ base: false, lg: true });
const entryTypes = [];
Expand All @@ -117,17 +119,17 @@ export default function () {
entryTypes.push(
<option key={type.value} value={type.value}>
{type.name}
</option>,
</option>
);

async function updateQueue(
queue_type: string,
before: number,
show_closed = false,
jump_item_to_top = false,
jump_item_to_top = false
): Promise<void> {
const queueReq = await fetch(
`/api/mod-queue/list?before=${before}&showClosed=${show_closed}&type=${queue_type}`,
`/api/mod-queue/list?before=${before}&showClosed=${show_closed}&type=${queue_type}`
);

if (!queueReq.ok) {
Expand All @@ -138,7 +140,7 @@ export default function () {
duration: 10000,
isClosable: true,
status: "error",
title: "Failed to load queue",
title: "Failed to load queue"
});

return;
Expand Down Expand Up @@ -171,7 +173,7 @@ export default function () {
duration: 10000,
isClosable: true,
status: "error",
title: ((await itemReq.json()) as { error: string }).error,
title: ((await itemReq.json()) as { error: string }).error
});
} else {
const itemData: { [k: string]: any } = await itemReq.json();
Expand Down Expand Up @@ -213,7 +215,7 @@ export default function () {

case "inactivity":
newEntries.push(
<InactivityNoticeCard {...(entry as InactivityNoticeProps)} />,
<InactivityNoticeCard {...(entry as InactivityNoticeProps)} />
);

break;
Expand All @@ -239,11 +241,11 @@ export default function () {
} = {
game_ban: useDisclosure(),
inactivity: useDisclosure(),
infraction: useDisclosure(),
infraction: useDisclosure()
};

useEffect(() => {
(async function () {
(async function() {
await updateQueue(pageProps.entry_types[0].value, before, false, true);
})();

Expand Down Expand Up @@ -284,7 +286,7 @@ export default function () {

await updateQueue(
target.options[target.selectedIndex].value,
Date.now(),
Date.now()
);
}}
>
Expand All @@ -309,7 +311,8 @@ export default function () {
fill="currentColor"
viewBox="0 0 16 16"
>
<path d="M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4z" />
<path
d="M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4z" />
</svg>
</Button>
</PopoverTrigger>
Expand Down

0 comments on commit 8435cbd

Please sign in to comment.