const { CommandInteraction, MessageAttachment, MessageEmbed } = require('discord.js'); module.exports = { name: "setmemes", description: "Start's Kumi's Auto-Memes System.", permission: "MANAGE_GUILD", options: [ { name: "channel", description: "🐸 | Select a channel which you would want memes to be automatically sent.", type: "CHANNEL", required: true }, { name: "settings", description: "⚙️ | Choose a setting.", type: "STRING", required: true, choices: [ { name: "enable", value: "enable" }, { name: "disable", value: "disable" }, ], } ], /** * @param {CommandInteraction} interaction */ run: async (client, interaction, args) => { const Schema = require('../../Schemas/automemesDB') const { options } = interaction const lolchannel = options.getChannel("channel"); const choices = interaction.options.getString("settings"); const disabledEmbed = new MessageEmbed() .setTitle('<:tickYes:803560696163860491> | Auto-Memes System Successfully Updated') .setDescription(`Auto-Memes System has been disabled for ${interaction.guild.name}`) .setColor("BC68E1") const errorEmbed = new MessageEmbed() .setTitle('<:no_no_square:803560694346809375> | Error') .setDescription(`Auto-Memes System has not been enabled for ${interaction.guild.name} yet.`) .setColor("RED") const successEmbed = new MessageEmbed() .setTitle('<:tickYes:803560696163860491> | Auto-Memes System Successful') .setDescription(`Auto-Memes System has been enabled for ${interaction.guild.name}`) .setColor("BC68E1") switch(choices) { case "enable" : { Schema.findOne({ guild: interaction.guild.id }), async (err, data) => { if (data) { await Schema.findOneAndRemove({ guild: interaction.guild.id, }); } } new Schema({ guild: interaction.guild.id, channel: lolchannel.id, }).save(); interaction.followUp({ embeds: [successEmbed]}); } break; case "disable" : { const data = await Schema.findOne({ guild: interaction.guild.id, }); if (!data) return interaction.followUp({ embeds: [errorEmbed]}) if (data) { await Schema.findOneAndRemove({ guild: interaction.guild.id, }); interaction.followUp({ embeds: [disabledEmbed]}); } } break; } } }