/[sudobot]/trunk/src/commands/moderation/UnmuteCommand.ts
ViewVC logotype

Diff of /trunk/src/commands/moderation/UnmuteCommand.ts

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 106 by rakin, Mon Jul 29 17:28:37 2024 UTC revision 124 by rakin, Mon Jul 29 17:28:41 2024 UTC
# Line 16  export async function unmute(client: Dis Line 16  export async function unmute(client: Dis
16          await History.create(user.id, user.guild!, 'unmute', d.id, null);          await History.create(user.id, user.guild!, 'unmute', d.id, null);
17    
18          const role = await user.guild!.roles.fetch(client.config.props[user.guild.id].mute_role);          const role = await user.guild!.roles.fetch(client.config.props[user.guild.id].mute_role);
19          await user.roles.remove(role!);          await user.roles.remove(role!, 'Unmuting user');
20    
21          const { default: Punishment } = await import('../../models/Punishment');          const { default: Punishment } = await import('../../models/Punishment');
22    
23          const { getTimeouts, clearTimeoutv2 } = await import('../../utils/setTimeout');          const { getTimeouts, clearTimeoutv2 } = await import('../../utils/setTimeout');
24    
25            const { default: Hardmute } = await import("../../models/Hardmute");
26    
27            const hardmute = await Hardmute.findOne({
28                where: {
29                    user_id: user.id,
30                    guild_id: user.guild.id,
31                },
32                order: [
33                    ['id', 'DESC']
34                ]
35            });
36    
37            if (hardmute) {
38                for await (const roleID of hardmute.get().roles) {
39                    try {
40                        const role = await user.guild.roles.fetch(roleID);
41    
42                        if (role) {
43                            await user.roles.add(role, 'Adding the roles which were removed due to hardmute');
44                        }
45                    }
46                    catch (e) {
47                        console.log(e);                    
48                    }
49                }
50    
51                await hardmute.destroy();
52            }
53    
54          const timeouts = getTimeouts();          const timeouts = getTimeouts();
55                    
56          for (const timeout of timeouts.values()) {          for (const timeout of timeouts.values()) {
# Line 86  export default class UnmuteCommand exten Line 115  export default class UnmuteCommand exten
115              return;              return;
116          }          }
117    
118            if (msg instanceof CommandInteraction)  
119                await msg.deferReply();
120    
121          let user: GuildMember;          let user: GuildMember;
122    
123          if (options.isInteraction) {          if (options.isInteraction) {
124              user = await <GuildMember> options.options.getMember('member');              user = await <GuildMember> options.options.getMember('member');
125    
126              if (!user) {              if (!user) {
127                  await msg.reply({                  await this.deferReply(msg, {
128                      embeds: [                      embeds: [
129                          new MessageEmbed()                          new MessageEmbed()
130                          .setColor('#f14a60')                          .setColor('#f14a60')
# Line 114  export default class UnmuteCommand exten Line 146  export default class UnmuteCommand exten
146                  user = user2;                  user = user2;
147              }              }
148              catch (e) {              catch (e) {
149                  await msg.reply({                  await this.deferReply(msg, {
150                      embeds: [                      embeds: [
151                          new MessageEmbed()                          new MessageEmbed()
152                          .setColor('#f14a60')                          .setColor('#f14a60')
# Line 130  export default class UnmuteCommand exten Line 162  export default class UnmuteCommand exten
162    
163          await unmute(client, user, msg.member!.user as User);          await unmute(client, user, msg.member!.user as User);
164    
165          await msg.reply({          await this.deferReply(msg, {
166              embeds: [              embeds: [
167                  new MessageEmbed()                  new MessageEmbed()
168                  .setAuthor({                  .setAuthor({

Legend:
Removed from v.106  
changed lines
  Added in v.124

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26