const sqlite3 = require('sqlite3').verbose(); const db = new sqlite3.Database('myDatabase.db'); module.exports = { name: 'unwarn', description: 'Supprimer un avertissement d\'un utilisateur', category: 'moderation', utilisation: 'unwarn @user ', async execute(message, args, client) { const user = message.mentions.users.first() || client.users.cache.get(args[0]); if (!user) return message.reply('Utilisateur non trouvé.'); if (args[1] === 'all') { db.run('DELETE FROM warnings WHERE guildId = ? AND userId = ?', [message.guild.id, user.id], (err) => { if (err) { console.error(err.message); return message.reply('Une erreur est survenue lors de la suppression des avertissements.'); } message.reply(`Tous les avertissements ont été supprimés pour ${user.tag}.`); }); }else { const warningId = parseInt(args[1]); if (!warningId) return message.reply("Veuillez mettre l'id du warn."); db.run('DELETE FROM warnings WHERE guildId = ? AND userId = ? AND warningId = ?', [message.guild.id, user.id, warningId], (err) => { if (err) { console.error(err.message); return message.reply('Une erreur est survenue lors de la suppression de l\'avertissement.'); } if (this.changes === 0) { return message.reply('Aucun avertissement trouvé avec cet ID.'); } message.reply(`Avertissement ${warningId} supprimé pour ${user.tag}.`); db.run(` UPDATE warnings SET warningId = warningId - 1 WHERE guildId = ? AND userId = ? AND warningId > ? `, [message.guild.id, user.id, warningId], (err) => { if (err) { console.error(err.message); } }); }); } }, };