chore(bot): fixed remaining issues

This commit is contained in:
Ahmad 2025-04-17 01:24:52 -04:00
parent 7c2a99daf5
commit 77c4b75440
No known key found for this signature in database
GPG key ID: 8FD8A93530D182BF
5 changed files with 29 additions and 17 deletions

View file

@ -104,7 +104,17 @@ const command: SubcommandCommand = {
return; return;
} }
try {
await setCount(count); await setCount(count);
await interaction.editReply({
content: `Count has been set to **${count}**. The next number should be **${count + 1}**.`,
});
} catch (error) {
await interaction.editReply({
content: `Failed to set the count: ${error}`,
});
}
await interaction.editReply({ await interaction.editReply({
content: `Count has been set to **${count}**. The next number should be **${count + 1}**.`, content: `Count has been set to **${count}**. The next number should be **${count + 1}**.`,
}); });

View file

@ -52,37 +52,38 @@ const command: OptionsCommand = {
PermissionsBitField.Flags.BanMembers, PermissionsBitField.Flags.BanMembers,
) )
) { ) {
await interaction.reply({ await interaction.editReply({
content: 'You do not have permission to ban members.', content: 'You do not have permission to ban members.',
flags: ['Ephemeral'],
}); });
return; return;
} }
if (moderator.roles.highest.position <= member.roles.highest.position) { if (moderator.roles.highest.position <= member.roles.highest.position) {
await interaction.reply({ await interaction.editReply({
content: content:
'You cannot ban a member with equal or higher role than yours.', 'You cannot ban a member with equal or higher role than yours.',
flags: ['Ephemeral'],
}); });
return; return;
} }
if (!member.bannable) { if (!member.bannable) {
await interaction.reply({ await interaction.editReply({
content: 'I do not have permission to ban this member.', content: 'I do not have permission to ban this member.',
flags: ['Ephemeral'],
}); });
return; return;
} }
const config = loadConfig();
const invite = interaction.guild.vanityURLCode ?? config.serverInvite;
const until = banDuration
? new Date(Date.now() + parseDuration(banDuration)).toUTCString()
: 'indefinitely';
try { try {
await member.user.send( await member.user.send(
banDuration banDuration
? `You have been banned from ${interaction.guild!.name} for ${banDuration}. Reason: ${reason}. You can join back at ${new Date( ? `You have been banned from ${interaction.guild.name} for ${banDuration}. Reason: ${reason}. You can join back at ${until} using the link below:\n${invite}`
Date.now() + parseDuration(banDuration), : `You been indefinitely banned from ${interaction.guild.name}. Reason: ${reason}.`,
).toUTCString()} using the link below:\n${interaction.guild.vanityURLCode ?? loadConfig().serverInvite}`
: `You been indefinitely banned from ${interaction.guild!.name}. Reason: ${reason}.`,
); );
} catch (error) { } catch (error) {
console.error('Failed to send DM:', error); console.error('Failed to send DM:', error);
@ -95,7 +96,7 @@ const command: OptionsCommand = {
await scheduleUnban( await scheduleUnban(
interaction.client, interaction.client,
interaction.guild!.id, interaction.guild.id,
member.id, member.id,
expiresAt, expiresAt,
); );
@ -117,7 +118,7 @@ const command: OptionsCommand = {
}); });
await logAction({ await logAction({
guild: interaction.guild!, guild: interaction.guild,
action: 'ban', action: 'ban',
target: member, target: member,
moderator, moderator,

View file

@ -22,7 +22,7 @@ const command: OptionsCommand = {
execute: async (interaction) => { execute: async (interaction) => {
if (!interaction.isChatInputCommand() || !interaction.guild) return; if (!interaction.isChatInputCommand() || !interaction.guild) return;
interaction.deferReply({ flags: ['Ephemeral'] }); await interaction.deferReply({ flags: ['Ephemeral'] });
try { try {
const userId = interaction.options.get('userid')?.value as string; const userId = interaction.options.get('userid')?.value as string;
@ -38,6 +38,7 @@ const command: OptionsCommand = {
}); });
return; return;
} }
try { try {
const ban = await interaction.guild.bans.fetch(userId); const ban = await interaction.guild.bans.fetch(userId);
if (!ban) { if (!ban) {
@ -64,7 +65,7 @@ const command: OptionsCommand = {
content: `<@${userId}> has been unbanned. Reason: ${reason}`, content: `<@${userId}> has been unbanned. Reason: ${reason}`,
}); });
} catch (error) { } catch (error) {
console.error(error); console.error(`Unable to unban user: ${error}`);
await interaction.editReply({ await interaction.editReply({
content: 'Unable to unban user.', content: 'Unable to unban user.',
}); });

View file

@ -27,7 +27,7 @@ const command: Command = {
(role) => role.name === 'Manager', (role) => role.name === 'Manager',
)?.roleId; )?.roleId;
const member = await interaction.guild?.members.fetch(interaction.user.id); const member = await interaction.guild.members.fetch(interaction.user.id);
const hasManagerRole = member?.roles.cache.has(managerRoleId || ''); const hasManagerRole = member?.roles.cache.has(managerRoleId || '');
if ( if (

View file

@ -33,7 +33,7 @@ const command: OptionsCommand = {
return; return;
} }
if ( if (
!interaction.memberPermissions!.has( !interaction.memberPermissions?.has(
PermissionsBitField.Flags.ModerateMembers, PermissionsBitField.Flags.ModerateMembers,
) )
) { ) {