1 |
const MessageEmbed = require("../src/MessageEmbed"); |
const MessageEmbed = require("../src/MessageEmbed"); |
2 |
const ms = require('ms'); |
const ms = require('ms'); |
3 |
const { unmute } = require("./unmute"); |
const { unmute } = require("./unmute"); |
4 |
|
const History = require("../src/History"); |
5 |
|
const { getUser } = require("../src/UserInput"); |
6 |
|
|
7 |
module.exports = { |
module.exports = { |
8 |
async handle(msg, cm) { |
async handle(msg, cm) { |
17 |
|
|
18 |
return; |
return; |
19 |
} |
} |
20 |
|
try { |
21 |
|
var user = await getUser(cm.args[0], msg); |
22 |
|
|
23 |
|
console.log(user); |
24 |
|
|
25 |
|
if (!user) { |
26 |
|
throw new Error('Invalid User'); |
27 |
|
} |
28 |
|
} |
29 |
|
catch (e) { |
30 |
|
console.log(e); |
31 |
|
|
32 |
|
await msg.reply({ |
33 |
|
embeds: [ |
34 |
|
new MessageEmbed() |
35 |
|
.setColor('#f14a60') |
36 |
|
.setDescription(`Invalid user given.`) |
37 |
|
] |
38 |
|
}); |
39 |
|
|
40 |
var user = await msg.mentions.members.first(); |
return; |
41 |
|
} |
42 |
|
|
43 |
let reason; |
let reason; |
44 |
let tmp = false; |
let tmp = false; |
45 |
let timeMs, time2; |
let timeMs, time2; |
81 |
await (reason = args.join(' ')); |
await (reason = args.join(' ')); |
82 |
} |
} |
83 |
|
|
|
if (typeof user !== 'object') { |
|
|
try { |
|
|
user = await msg.guild.members.fetch(cm.args[0]); |
|
|
} |
|
|
catch(e) { |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
if (typeof user !== 'object') { |
|
|
await msg.reply({ |
|
|
embeds: [ |
|
|
new MessageEmbed() |
|
|
.setColor('#f14a60') |
|
|
.setDescription(`Invalid user given.`) |
|
|
] |
|
|
}); |
|
|
|
|
|
return; |
|
|
} |
|
|
|
|
84 |
if (time) { |
if (time) { |
85 |
await app.db.get("INSERT INTO unmutes(user_id, guild_id, time) VALUES(?, ?, ?)", [user.id, msg.guild.id, new Date(time2).toISOString()], async (err) => { |
await app.db.get("INSERT INTO unmutes(user_id, guild_id, time) VALUES(?, ?, ?)", [user.id, msg.guild.id, new Date(time2).toISOString()], async (err) => { |
86 |
if (err) |
if (err) |
98 |
let guild = await app.client.guilds.cache.find(g => g.id === data.guild_id); |
let guild = await app.client.guilds.cache.find(g => g.id === data.guild_id); |
99 |
let member = await guild?.members.cache.find(m => m.id === data.user_id); |
let member = await guild?.members.cache.find(m => m.id === data.user_id); |
100 |
|
|
101 |
if (member) |
if (member) { |
102 |
await unmute(member, null, guild); |
await unmute(member, null, guild, true, app.client.user); |
103 |
|
await History.create(member.id, msg.guild, 'unmute', app.client.user.id, async (data2) => {}); |
104 |
|
} |
105 |
|
|
106 |
console.log(data); |
console.log(data); |
107 |
}); |
}); |
111 |
}); |
}); |
112 |
} |
} |
113 |
|
|
114 |
this.mute(user, reason, msg); |
this.mute(user, reason, msg, true, timeMs !== undefined ? timeMs : undefined); |
115 |
}, |
}, |
116 |
async mute(user, reason, msg) { |
async mute(user, reason, msg, log, timeMs) { |
117 |
try { |
try { |
118 |
let mutedRole = await msg.guild.roles.cache.find(role => role.id === app.config.get('mute_role')); |
let mutedRole = await msg.guild.roles.cache.find(role => role.id === app.config.get('mute_role')); |
119 |
let generalRole = await msg.guild.roles.cache.find(role => role.id === app.config.get('gen_role')); |
// let generalRole = await msg.guild.roles.cache.find(role => role.id === app.config.get('gen_role')); |
120 |
|
|
121 |
if (typeof mutedRole !== 'object' || mutedRole === null) { |
if (typeof mutedRole !== 'object' || mutedRole === null) { |
122 |
await msg.reply({ |
await msg.reply({ |
130 |
return; |
return; |
131 |
} |
} |
132 |
|
|
133 |
if (typeof generalRole !== 'object' || generalRole === null) { |
// if (typeof generalRole !== 'object' || generalRole === null) { |
134 |
await msg.reply({ |
// await msg.reply({ |
135 |
embeds: [ |
// embeds: [ |
136 |
new MessageEmbed() |
// new MessageEmbed() |
137 |
.setColor('#f14a60') |
// .setColor('#f14a60') |
138 |
.setDescription(`No general role is set.`) |
// .setDescription(`No general role is set.`) |
139 |
] |
// ] |
140 |
}); |
// }); |
141 |
|
|
142 |
return; |
// return; |
143 |
} |
// } |
144 |
|
|
145 |
|
if (!log) |
146 |
|
await History.create(user.id, msg.guild, 'mute', msg.author.id, typeof reason === 'undefined' || reason.trim() === '' ? null : reason, async (data2) => {}); |
147 |
|
|
148 |
await user.roles.add(mutedRole); |
await user.roles.add(mutedRole); |
149 |
await user.roles.remove(generalRole); |
// await user.roles.remove(generalRole); |
150 |
|
|
151 |
|
if (timeMs !== false) |
152 |
|
await app.logger.logMute(user, typeof reason === 'undefined' || reason.trim() === '' ? '*No reason provided*' : reason, timeMs, msg.author); |
153 |
} |
} |
154 |
catch(e) { |
catch(e) { |
155 |
console.log(e); |
console.log(e); |