From 6b937338ec881060b1be64df1958407039bcfaef Mon Sep 17 00:00:00 2001 From: Fuwn Date: Wed, 10 Dec 2025 17:31:40 -0800 Subject: feat(interactions:server): Support role slash command in Tracen Academy --- packages/interactions/server.ts | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/packages/interactions/server.ts b/packages/interactions/server.ts index 7dfc8e2..e2794f4 100644 --- a/packages/interactions/server.ts +++ b/packages/interactions/server.ts @@ -36,6 +36,7 @@ import { COLOR_ROLE_IDS, CENTRAL_STAFF_ROLES, CENTRAL_PRIVILEGED_ACCESS_ROLE_ID, + ROLEPLAY_ADMINISTRATOR_ROLE_ID, } from "../shared"; const router = AutoRouter(); @@ -67,6 +68,11 @@ const ALLOWED_ROLE_IDS: readonly string[] = [ "1423213971422580736", // Privileged Access "1410333831281643630", // Art & Media NSFW "1418391675050528879", // Roleplay NSFW + + // Tracen Academy + "1434710765604049027", // Certified Trainer + "1428173099270148173", // Race Planner + "1423919137335545961", // Event Planner ]; const sendComplaintToChannel = async ( @@ -849,8 +855,10 @@ router.post("/", async (request: Request, environment: Environment) => { const hasAdminPermission = member?.permissions && (parseInt(member.permissions) & 0x8) === 0x8; const hasOwnerRole = member?.roles?.includes(OWNER_ROLE_ID); - const hasAdministratorRole = member?.roles?.includes( - ADMINISTRATOR_ROLE_ID, + const hasAdministratorRole = member?.roles?.some((roleId) => + [ADMINISTRATOR_ROLE_ID, ROLEPLAY_ADMINISTRATOR_ROLE_ID].includes( + roleId as any, + ), ); if (!hasAdminPermission && !hasOwnerRole && !hasAdministratorRole) -- cgit v1.2.3