From f09ed4e7f4b8089a70fd027d062d0291a271ff15 Mon Sep 17 00:00:00 2001 From: Danya H Date: Sat, 8 Jun 2024 17:27:26 +0100 Subject: [PATCH] banner url is not welcome/ticket banner url --- src/commands/admin/create-ticket-system.ts | 6 ++-- ...set-banner-url.ts => set-banner-ticket.ts} | 10 +++--- src/commands/admin/set-banner-welcome.ts | 36 +++++++++++++++++++ src/db.ts | 3 +- src/events/guildMemberAdd.ts | 2 +- 5 files changed, 47 insertions(+), 10 deletions(-) rename src/commands/admin/{set-banner-url.ts => set-banner-ticket.ts} (79%) create mode 100644 src/commands/admin/set-banner-welcome.ts diff --git a/src/commands/admin/create-ticket-system.ts b/src/commands/admin/create-ticket-system.ts index 278d0e4..c413cc2 100644 --- a/src/commands/admin/create-ticket-system.ts +++ b/src/commands/admin/create-ticket-system.ts @@ -53,7 +53,7 @@ export class CreateTicketSystem { } const pricesChannelId = await db.get(DBTableEnum.PRICE_CHANNEL) - const bannerURL = await db.get(DBTableEnum.BANNER_URL) + const bannerURL = await db.get(DBTableEnum.BANNER_TICKET) const workload = await db.get(DBTableEnum.WORKLOAD) if (!pricesChannelId) { @@ -67,9 +67,9 @@ export class CreateTicketSystem { return } if (!bannerURL) { - logger.error('Missing banner', 'Set using /set-banner-url') + logger.error('Missing banner', 'Set using /set-banner-ticket') await interaction.editReply( - '❌ Missing banner\nSet using /set-banner-url', + '❌ Missing banner\nSet using /set-banner-ticket', ) return } diff --git a/src/commands/admin/set-banner-url.ts b/src/commands/admin/set-banner-ticket.ts similarity index 79% rename from src/commands/admin/set-banner-url.ts rename to src/commands/admin/set-banner-ticket.ts index de5d4db..243bf77 100644 --- a/src/commands/admin/set-banner-url.ts +++ b/src/commands/admin/set-banner-ticket.ts @@ -5,10 +5,10 @@ import { db, DBTableEnum } from '../../db' import { logger } from '../../lib' @Discord() -export class SetFeedbackChannel { +export class SetBannerTicket { @Slash({ - description: 'Set banner url', - name: 'set-banner-url', + description: 'Set ticket banner url', + name: 'set-banner-ticket', defaultMemberPermissions: 'Administrator', }) async setBannerUrl( @@ -22,13 +22,13 @@ export class SetFeedbackChannel { interaction: CommandInteraction, ) { await interaction.deferReply({ ephemeral: true }) - await db.set(DBTableEnum.BANNER_URL, url).catch(async () => { + await db.set(DBTableEnum.BANNER_TICKET, url).catch(async () => { await interaction.editReply({ content: `❌ Failed to set banner`, }) return }) - logger.database(DBTableEnum.BANNER_URL, url) + logger.database(DBTableEnum.BANNER_TICKET, url) await interaction.editReply({ content: `✔️ Set banner URL to ${url}`, }) diff --git a/src/commands/admin/set-banner-welcome.ts b/src/commands/admin/set-banner-welcome.ts new file mode 100644 index 0000000..15c52e1 --- /dev/null +++ b/src/commands/admin/set-banner-welcome.ts @@ -0,0 +1,36 @@ +import { Discord, Slash, SlashOption } from 'discordx' +import { ApplicationCommandOptionType, CommandInteraction } from 'discord.js' + +import { db, DBTableEnum } from '../../db' +import { logger } from '../../lib' + +@Discord() +export class SetBannerWelcome { + @Slash({ + description: 'Set welcome banner url', + name: 'set-banner-welcome', + defaultMemberPermissions: 'Administrator', + }) + async setBannerUrl( + @SlashOption({ + name: 'url', + description: 'Provide banner url with extension on the end', + type: ApplicationCommandOptionType.String, + required: true, + }) + url: string, + interaction: CommandInteraction, + ) { + await interaction.deferReply({ ephemeral: true }) + await db.set(DBTableEnum.BANNER_WELCOME, url).catch(async () => { + await interaction.editReply({ + content: `❌ Failed to set banner`, + }) + return + }) + logger.database(DBTableEnum.BANNER_WELCOME, url) + await interaction.editReply({ + content: `✔️ Set banner URL to ${url}`, + }) + } +} diff --git a/src/db.ts b/src/db.ts index 98ec9d0..4a54809 100644 --- a/src/db.ts +++ b/src/db.ts @@ -8,7 +8,8 @@ export enum DBTableEnum { PORTFOLIO_CHANNEL = 'PORTFOLIO_CHANNEL', MAKE_AN_ORDER_CHANNEL = 'MAKE_AN_ORDER_CHANNEL', PRICE_CHANNEL = 'PRICE_CHANNEL', - BANNER_URL = 'BANNER_URL', + BANNER_WELCOME = 'BANNER_WELCOME', + BANNER_TICKET = 'BANNER_TICKET', WORKLOAD = 'WORKLOAD', WORKLOAD_MESSAGE = 'WORKLOAD_MESSAGE', WORKLOAD_CHANNEL = 'WORKLOAD_CHANNEL', diff --git a/src/events/guildMemberAdd.ts b/src/events/guildMemberAdd.ts index 09171ee..8324c1f 100644 --- a/src/events/guildMemberAdd.ts +++ b/src/events/guildMemberAdd.ts @@ -12,7 +12,7 @@ export class GuildMemberAdd { DBTableEnum.MAKE_AN_ORDER_CHANNEL, ) const welcomeChannelID = await db.get(DBTableEnum.WELCOME_CHANNEL) - const imageURL = await db.get(DBTableEnum.BANNER_URL) + const imageURL = await db.get(DBTableEnum.BANNER_WELCOME) const roleID = await db.get(DBTableEnum.WELCOME_ROLE)