3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-07-07 11:07:19 +00:00

Finish preliminary rework, ready to test

This commit is contained in:
Dark 2021-06-02 04:07:50 +02:00
parent 57893e7f76
commit d0a1beb809
No known key found for this signature in database
GPG key ID: 2CD6ACB6B0A87B8A
177 changed files with 854 additions and 707 deletions

View file

@ -4,6 +4,7 @@ import { rolesCmd } from "../types";
import { resolveMember, stripObjectToScalars, successMessage, resolveRoleId } from "../../../utils";
import { LogType } from "../../../data/LogType";
import { logger } from "../../../logger";
import { GuildMember } from "discord.js";
export const MassRemoveRoleCmd = rolesCmd({
trigger: "massremoverole",
@ -15,9 +16,9 @@ export const MassRemoveRoleCmd = rolesCmd({
},
async run({ message: msg, args, pluginData }) {
msg.channel.createMessage(`Resolving members...`);
msg.channel.send(`Resolving members...`);
const members: Member[] = [];
const members: GuildMember[] = [];
const unknownMembers: string[] = [];
for (const memberId of args.members) {
const member = await resolveMember(pluginData.client, pluginData.guild, memberId);
@ -57,12 +58,12 @@ export const MassRemoveRoleCmd = rolesCmd({
return;
}
const membersWithTheRole = members.filter(m => m.roles.includes(roleId));
const membersWithTheRole = members.filter(m => m.roles.cache.has(roleId));
let assigned = 0;
const failed: string[] = [];
const didNotHaveRole = members.length - membersWithTheRole.length;
msg.channel.createMessage(
msg.channel.send(
`Removing role **${role.name}** from ${membersWithTheRole.length} ${
membersWithTheRole.length === 1 ? "member" : "members"
}...`,
@ -71,7 +72,7 @@ export const MassRemoveRoleCmd = rolesCmd({
for (const member of membersWithTheRole) {
try {
pluginData.state.logs.ignoreLog(LogType.MEMBER_ROLE_REMOVE, member.id);
await member.removeRole(roleId);
await member.roles.remove(roleId);
pluginData.state.logs.log(LogType.MEMBER_ROLE_REMOVE, {
member: stripObjectToScalars(member, ["user", "roles"]),
roles: role.name,
@ -97,6 +98,6 @@ export const MassRemoveRoleCmd = rolesCmd({
resultMessage += `\nUnknown members: ${unknownMembers.join(", ")}`;
}
msg.channel.createMessage(successMessage(resultMessage));
msg.channel.send(successMessage(resultMessage));
},
});