Files
gestion/commands/gestion/change.js
T

50 lines
1.7 KiB
JavaScript

const fs = require('fs');
const path = require('path');
const db = require('quick.db');
const GestionDb = new db.table("gestion");
module.exports = {
name: 'change',
description: 'Change le niveau de permission d\'une commande',
emote: '🔄',
utilisation: 'change <commande> <perm>',
category: 'botcontrol',
async execute(message, args, client) {
const botId = client.user.id;
const unchangeableCommands = ['owner', 'unowner','buyer'];
if (args.length < 2) {
return message.reply('Veuillez spécifier une commande et un niveau de permission.');
}
const commandName = args[0].toLowerCase();
let permissionLevel;
if (args[1] === 'owner') {
permissionLevel = 10;
}
else if (args[1] === 'buyer') {
permissionLevel = 11;
}
else {
permissionLevel = parseInt(args[1]);
if (isNaN(permissionLevel) || permissionLevel < 0 || permissionLevel > 9) {
return message.reply('Veuillez spécifier un niveau de permission valide (entre 0 et 9).');
}
}
if (unchangeableCommands.includes(commandName)) {
return message.reply(`La commande ${commandName} ne peut pas être modifiée.`);
}
if (!client.commands.has(commandName)) {
return message.reply('Cette commande n\'existe pas.');
}
let permissions = await GestionDb.get(`${botId}.permissions`);
permissions[commandName] = permissionLevel;
await GestionDb.set(`${botId}.permissions`, permissions);
message.reply(`Le niveau de permission de la commande ${commandName} a été changé à ${args[0].toLowerCase()}.`);
},
};