const { Message, Events } = require("discord.js"); const db = require("../fonctions/database.js"); var loggT = require("../loggerT.js"); var loggE = require("../loggerE.js"); const getPermissionLevel = require("../fonctions/getPermissionLevel.js"); module.exports = { name: Events.MessageCreate, async execute(message, client) { if (message.author.bot) return; const user = await new Promise((resolve, reject) => { db.get( `SELECT * FROM users WHERE guildId = ? AND userId = ?`, [message.guild.id, message.author.id], (err, row) => { if (err) reject(err); resolve(row); }, ); }); if (user.blacklist == 1) { return; } const prefix = db.get(`SELECT value FROM config WHERE guildId = ? AND name = ?`, [ message.guild.id, "prefix", ])?.value || "&"; if (message.content.startsWith(prefix)) { const args = message.content.slice(prefix.length).trim().split(/ +/); const commandName = args.shift()?.toLowerCase(); const command = client.commands.get(commandName); if (!command) return; const permissionLevel = await getPermissionLevel( message.guild.id, message.member, ); if (!client.config.owners.includes(message.author.id)) { if (message.guild.ownerId !== message.author.id) { if (permissionLevel < command.permission) { return message.reply( "Vous n'avez pas la permission d'utiliser cette commande.", ); } } } try { command.execute(message, args, client); console.log( `[${prefix}] ${message.guild.name} | ${message.author.tag} | ${command.name}` .blue, ); loggT( `[${prefix}] ${message.guild.name} | ${message.author.tag} | ${command.name}`, ); } catch (error) { console.error(error); loggE(error); message.reply("Erreur lors de l'exécution de la commande"); } } else if ( message.content === `<@!${client.user.id}>` || message.content === `<@${client.user.id}>` ) { message.reply(`Mon prefix est \`${prefix}\``); const command = client.commands.get('help'); try { command.execute(message, null, client); console.log(`[${prefix}] ${message.guild.name} | ${message.author.tag} | ${command.name}`.blue) loggT(`[${prefix}] ${message.guild.name} | ${message.author.tag} | ${command.name}`) } catch (error) { console.error(error); loggerT(error) message.reply("Erreur lors de l'exécution de la commande help"); } } }, };