mirror of
https://github.com/arthur-pbty/gestion.git
synced 2026-06-03 23:36:35 +02:00
Mise à jour des fonctions de permission et de l'emote pour la commande kick & add ban command
This commit is contained in:
@@ -12,6 +12,7 @@ async function getPermissionLevel(member, client) {
|
|||||||
return 10;
|
return 10;
|
||||||
}
|
}
|
||||||
let highestPermission = 0;
|
let highestPermission = 0;
|
||||||
|
try {
|
||||||
for (let i = 1; i <= 9; i++) {
|
for (let i = 1; i <= 9; i++) {
|
||||||
const roleIds = await GestionDb.get(`${botId}.${member.guild.id}.p${i}`);
|
const roleIds = await GestionDb.get(`${botId}.${member.guild.id}.p${i}`);
|
||||||
if (roleIds) {
|
if (roleIds) {
|
||||||
@@ -25,5 +26,8 @@ async function getPermissionLevel(member, client) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
return highestPermission;
|
return highestPermission;
|
||||||
|
} catch {
|
||||||
|
return highestPermission;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
module.exports = { getPermissionLevel };
|
module.exports = { getPermissionLevel };
|
||||||
@@ -0,0 +1,45 @@
|
|||||||
|
const { EmbedBuilder, User } = require("discord.js")
|
||||||
|
const { getPermissionLevel } = require('../fonction');
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
name: 'ban',
|
||||||
|
description: 'Ban a member',
|
||||||
|
emote: '🚫',
|
||||||
|
utilisation: 'ban <@member> [reason]',
|
||||||
|
category: 'moderation',
|
||||||
|
|
||||||
|
async execute(message, args, client) {
|
||||||
|
const userId = message.mentions.users.first()?.id
|
||||||
|
|| args[0];
|
||||||
|
|
||||||
|
const user = await client.users.fetch(userId);
|
||||||
|
if (!user) {
|
||||||
|
return message.reply('Veuillez mentionner un utilisateur valide ou fournir un ID valide.');
|
||||||
|
}
|
||||||
|
|
||||||
|
if (user.id === message.author.id) {
|
||||||
|
return message.reply('Vous ne pouvez pas vous ban vous même');
|
||||||
|
}
|
||||||
|
if (user.id === client.user.id) {
|
||||||
|
return message.reply('Vous ne pouvez pas me ban');
|
||||||
|
}
|
||||||
|
if (await getPermissionLevel(user, client) === 11) {
|
||||||
|
return message.reply('Vous ne pouvez pas ban un membre buyer');
|
||||||
|
}
|
||||||
|
if (await getPermissionLevel(user, client) === 10) {
|
||||||
|
return message.reply('Vous ne pouvez pas ban un membre owner');
|
||||||
|
}
|
||||||
|
if (await getPermissionLevel(message.author, client) !== 11 || await getPermissionLevel(message.author, client) !== 10) {
|
||||||
|
if (await getPermissionLevel(user, client) >= await getPermissionLevel(message.author, client)) {
|
||||||
|
return message.reply('Vous ne pouvez pas ban un membre avec une permission égale ou supérieure à la votre');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
await message.guild.members.ban(user, { reason: args.slice(1).join(' ')+` : ${message.author.tag}` || `Aucune raison spécifiée : ${message.author.tag}` });
|
||||||
|
message.channel.send(`L'utilisateur ${user.username} a été banni.`);
|
||||||
|
} catch {
|
||||||
|
message.reply(`Une erreur s'est produite lors de la tentative de bannissement de ${user.username}.`);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
};
|
||||||
@@ -5,7 +5,7 @@ module.exports = {
|
|||||||
name: 'kick',
|
name: 'kick',
|
||||||
aliases: ['expulse'],
|
aliases: ['expulse'],
|
||||||
description: 'Kick a member',
|
description: 'Kick a member',
|
||||||
emote: '🔍',
|
emote: '🚫',
|
||||||
utilisation: 'kick <@member> [reason]',
|
utilisation: 'kick <@member> [reason]',
|
||||||
category: 'moderation',
|
category: 'moderation',
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user