const sqlite3 = require('sqlite3').verbose(); const db = new sqlite3.Database('myDatabase.db'); module.exports = { name: 'raidmode', description: 'Active ou désactive le mode raid pour supprimer une permission spécifiée de tous les rôles qui l\'ont', async execute(message, args) { const botId = message.client.user.id; const guildId = message.guild.id; const guild = message.guild let data = await new Promise((resolve, reject) => { db.get('SELECT value FROM gestion WHERE id = ?', [botId], (err, row) => { if (err) { console.error(err.message); reject(err); } resolve(row ? JSON.parse(row.value) : {}); }); }); const isRaidModeActive = data.guildid && data.guildid[guildId] && data.guildid[guildId].secur.raidmode; const newRaidModeValue = !isRaidModeActive; db.run('INSERT OR REPLACE INTO gestion (id, value) VALUES (?, ?)', [`${botId}.${guildId}`, JSON.stringify({ secur: { raidmode: newRaidModeValue } })], (err) => { if (err) { console.error(err.message); message.reply('Une erreur s\'est produite lors de la mise à jour du mode raid.'); } else { if (newRaidModeValue) { guild.disableInvites(true) message.reply('Le mode raid est maintenant activé.'); } else { guild.disableInvites(false); message.reply('Le mode raid n\'est plus activé.'); } } }); }, };