From 68df9f00058fb8da5476029844356ad737d7c1e9 Mon Sep 17 00:00:00 2001 From: Techbot121 Date: Sun, 30 Jun 2024 17:00:38 +0200 Subject: [PATCH] fix isAllowed on reports --- app/services/gamebridge/discord/DiscordClient.ts | 6 +++--- app/services/gamebridge/payloads/AdminNotifyPayload.ts | 10 ++++++++-- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/app/services/gamebridge/discord/DiscordClient.ts b/app/services/gamebridge/discord/DiscordClient.ts index a6b3c737..bee4b861 100644 --- a/app/services/gamebridge/discord/DiscordClient.ts +++ b/app/services/gamebridge/discord/DiscordClient.ts @@ -27,10 +27,10 @@ export default class DiscordClient extends Discord.Client { this.login(token); } - public static async isAllowed(server: GameServer, user: Discord.User): Promise { + public async isAllowed(user: Discord.User): Promise { try { - const discord = server.discord; - const guild = discord.guilds.cache.get(discord.config.bot.primaryGuildId); + const discord = this.gameServer.discord; + const guild = await discord.guilds.fetch(discord.config.bot.primaryGuildId); if (!guild) return false; const member = await guild.members.fetch(user.id); diff --git a/app/services/gamebridge/payloads/AdminNotifyPayload.ts b/app/services/gamebridge/payloads/AdminNotifyPayload.ts index ab4a6b12..a4d934a6 100644 --- a/app/services/gamebridge/payloads/AdminNotifyPayload.ts +++ b/app/services/gamebridge/payloads/AdminNotifyPayload.ts @@ -1,6 +1,6 @@ import * as requestSchema from "./structures/AdminNotifyRequest.json"; import { AdminNotifyRequest } from "./structures"; -import { DiscordClient, GameServer } from ".."; +import { GameServer } from ".."; import { f } from "@/utils"; import Discord from "discord.js"; import Payload from "./Payload"; @@ -26,7 +26,13 @@ export default class AdminNotifyPayload extends Payload { const collector = notificationsChannel.createMessageComponentCollector({ filter }); collector.on("collect", async (ctx: Discord.ButtonInteraction) => { - if (!(await DiscordClient.isAllowed(server, ctx.user))) return; + if (!(await server.discord.isAllowed(ctx.user))) { + await ctx.reply({ + content: "you're not allowed to use this button...", + ephemeral: true, + }); + return; + } await ctx.deferReply(); try { const interactionId64 = new SteamID(