remove vc from custom vc creation

This commit is contained in:
Baipyrus 2024-02-08 19:03:58 +01:00
parent 03fb793b6c
commit 067702ecc6

View File

@ -19,7 +19,7 @@ export const data = new SlashCommandBuilder()
.addSubcommand((subcommand) => .addSubcommand((subcommand) =>
subcommand subcommand
.setName('register') .setName('register')
.setDescription('Registers an existing voice channel.') .setDescription('Registers an existing voice channel for custom channel creation.')
.addChannelOption((option) => .addChannelOption((option) =>
option option
.setRequired(true) .setRequired(true)
@ -27,6 +27,18 @@ export const data = new SlashCommandBuilder()
.addChannelTypes(ChannelType.GuildVoice) .addChannelTypes(ChannelType.GuildVoice)
.setDescription('The voice channel to be used.') .setDescription('The voice channel to be used.')
) )
)
.addSubcommand((subcommand) =>
subcommand
.setName('remove')
.setDescription('Remove a voice channel from custom channel creation.')
.addChannelOption((option) =>
option
.setRequired(true)
.setName('channel')
.addChannelTypes(ChannelType.GuildVoice)
.setDescription('The voice channel to be unregistered.')
)
); );
export async function execute(interaction) { export async function execute(interaction) {
const { guild, options } = interaction; const { guild, options } = interaction;
@ -60,7 +72,7 @@ export async function execute(interaction) {
} }
case 'register': { case 'register': {
// Get channel id from user input // Get channel id from user input
const id = options.getChannel('channel'); const { id } = options.getChannel('channel');
// Save channel data // Save channel data
step = 'save'; step = 'save';
@ -73,6 +85,31 @@ export async function execute(interaction) {
}); });
break; break;
} }
case 'remove': {
// Get channel id from user input
const { id } = options.getChannel('channel');
// Remove channel from guild
step = 'remove';
const count = await VoiceChannel.destroy({
where: {
id,
create: true
}
});
// Set reply based on result of deletion
let response = 'Successfully removed';
if (count === 0)
response = 'Failed to remove';
// Reply to acknowledge command
await interaction.reply({
content: `${response} channel from custom channel creation!`,
ephemeral: true
});
break;
}
} }
} catch (error) { } catch (error) {
console.error(error); console.error(error);