Skip to content
Open
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 21 additions & 18 deletions commands/suspend.js
Original file line number Diff line number Diff line change
Expand Up @@ -106,25 +106,28 @@ module.exports = {
.setFooter({ text: `Unsuspending at ` })
.setTimestamp(Date.now() + time);
if (overwrite) {
db.query(`UPDATE suspensions SET uTime = '${Date.now() + time}' WHERE id = '${member.id}' AND suspended = true`)
embed.data.fields[3].value = `Overwritten suspensions. Roles the same as prior suspension`
suspensionLog.send({ embeds: [embed] }).then(member.user.send({ embeds: [embed] }).catch(() => {}))
} else {
let userRolesString = '', userRoles = []
const roles = [...member.roles.cache.filter(r => !r.managed && (!settings.lists.discordRoles.map(role => settings.roles[role]).includes(r.id))).values()];
embed.data.fields[3].value = roles.join(', ') || 'None!';
member.roles.cache.each(r => {
if (r.managed) return
if (settings.lists.discordRoles.map(role => settings.roles[role]).includes(r.id)) return
userRoles.push(r.id)
userRolesString = userRolesString.concat(`${r.id} `)
db.query(`SELECT reason FROM suspensions WHERE id = '${member.id}' AND suspended = true`, async (err, rows) => {
Comment thread
DavidZhang22 marked this conversation as resolved.
Outdated
const new_suspender = message.guild.members.cache.get(message.author.id).nickname??''
Comment thread
DavidZhang22 marked this conversation as resolved.
Outdated
db.query(`UPDATE suspensions SET suspended = false, reason = '${'overwriter: ' + new_suspender + '- ' + reason}' WHERE id = '${member.id}' AND suspended = true`)
Comment thread
DavidZhang22 marked this conversation as resolved.
Outdated
embed.data.fields[3].value = `Overwritten suspensions. Roles the same as prior suspension`
suspensionLog.send({ embeds: [embed] }).then(member.user.send({ embeds: [embed] }).catch(() => {}))
Comment thread
DavidZhang22 marked this conversation as resolved.
Outdated
Comment thread
DavidZhang22 marked this conversation as resolved.
Outdated
})
messageId = await suspensionLog.send({ embeds: [embed] });
await member.roles.remove(userRoles)
setTimeout(() => { member.roles.add(suspendedRole.id); }, 1000)
await member.user.send({ embeds: [embed] }).catch(() => {})
db.query(`INSERT INTO suspensions (id, guildid, suspended, uTime, reason, modid, roles, logmessage, unixTimestamp, length) VALUES ('${member.id}', '${message.guild.id}', true, '${Date.now() + time}', ${db.escape(reason)}, '${message.author.id}', '${userRolesString}', '${messageId.id}', '${Date.now()}', '${`${timeString} ${timeTypeString}`}');`)
}
}
let userRolesString = '', userRoles = []
const roles = [...member.roles.cache.filter(r => !r.managed && (!settings.lists.discordRoles.map(role => settings.roles[role]).includes(r.id))).values()];
embed.data.fields[3].value = roles.join(', ') || 'None!';
member.roles.cache.each(r => {
if (r.managed) return
if (settings.lists.discordRoles.map(role => settings.roles[role]).includes(r.id)) return
userRoles.push(r.id)
userRolesString = userRolesString.concat(`${r.id} `)
})
Comment thread
DavidZhang22 marked this conversation as resolved.
messageId = await suspensionLog.send({ embeds: [embed] });
await member.roles.remove(userRoles)
setTimeout(() => { member.roles.add(suspendedRole.id); }, 1000)
Comment thread
DavidZhang22 marked this conversation as resolved.
Outdated
await member.user.send({ embeds: [embed] }).catch(() => {})
db.query(`INSERT INTO suspensions (id, guildid, suspended, uTime, reason, modid, roles, logmessage, unixTimestamp, length) VALUES ('${member.id}', '${message.guild.id}', true, '${Date.now() + time}', ${db.escape(reason)}, '${message.author.id}', '${userRolesString}', '${messageId.id}', '${Date.now()}', '${`${timeString} ${timeTypeString}`}');`)
Comment thread
DavidZhang22 marked this conversation as resolved.
Outdated

message.channel.send(`${member} has been suspended`)
}

Expand Down