// To authorize a message sender for admin level commands const { DebugBuilder } = require("../utilities/debugBuilder"); const log = new DebugBuilder("server", "discordAuthorization"); const botAdmins = process.env.BOT_ADMINS; exports.authorizeCommand = async (interaction, command, next) => { log.DEBUG("Command is privileged? ", command.isPrivileged) // If the command is not privileged, run the command if (!command.isPrivileged) return next(true); log.DEBUG(`${interaction.member.user} is attempting to run the privileged command '${command}'`); // Check to see if the user has the role specified in the config if (!interaction.member.roles.cache.has(`${botAdmins}`)) { log.DEBUG(`Unauthorized - ${interaction.member.user} does not have the privilege to run '${command}'`); return await interaction.reply({ content: `Sorry ${interaction.member.user}, you are not permitted to run that command`, ephemeral: true }); } else { log.DEBUG(`Authorized - ${interaction.member.user} can run '${command}'`); return next(true); } }