Update channel.js

This commit is contained in:
DeSqBlocki
2025-02-13 21:31:42 +01:00
committed by GitHub
parent 29f6c0cca1
commit c7727474c9
+44
View File
@@ -54,6 +54,29 @@ async function getChannel(interaction) {
}, 5000))
}
}
async function unsetChannel(interaction) {
const event = interaction.options.getString('event')
const db = mClient.db('guilds')
const coll = db.collection(interaction.guild.id)
try {
await coll.deleteOne({
event: event
})
return interaction.editReply({
content: `Channel for Event: ${event} has been unset`,
flags: MessageFlags.Ephemeral
})
} catch (error) {
return interaction.editReply({
content: `**[ERROR]:** ${event} is currently not set to any channel`,
flags: MessageFlags.Ephemeral
}).then(setTimeout(() => {
interaction.deleteReply()
}, 5000))
}
}
module.exports = {
data: new SlashCommandBuilder()
.setName('channel')
@@ -100,6 +123,24 @@ module.exports = {
])
.setRequired(true)
)
)
.addSubcommand(s =>
s
.setName('unset')
.setDescription('unset channel for certain events')
.addStringOption(o =>
o
.setName('event')
.setDescription('choose the event')
.addChoices([
{ "name": "When a user joins this server", "value": "GuildMemberAdd" },
{ "name": "When a user left this server", "value": "GuildMemberRemove" },
{ "name": "When it's a users birthday", "value": "Discord/Birthday" },
{ "name": "When debug logs are sent", "value": "Discord/Logs" },
{ "name": "When stream is live", "value": "Twitch/Online" }
])
.setRequired(true)
)
),
async execute(interaction) {
if (!interaction.member.permissions.has("ADMINISTRATOR")) {
@@ -116,6 +157,9 @@ module.exports = {
case "get":
getChannel(interaction)
break;
case "unset":
unsetChannel(interaction)
break;
default:
break;
}