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 == true) { 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 ((permissionLevel < command.permission) && (!client.config.owners.includes(message.author.id))) { return message.reply("Vous n'avez pas la permission d'utiliser cette commande."); } try { command.execute(message, args, client); console.log("execute2") 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}\``); } } };