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

Add safety check for role availability

This commit is contained in:
Dark 2021-01-28 02:06:08 +01:00
parent c3f54954ca
commit 499853bb52
No known key found for this signature in database
GPG key ID: 384C4B4F5B1E25A8
2 changed files with 4 additions and 2 deletions

View file

@ -17,8 +17,9 @@ export async function clearExpiredMutes(pluginData: GuildPluginData<MutesPluginT
}
if (mute.roles_to_restore) {
const memberOptions: MemberOptions = {};
const guildRoles = pluginData.guild.roles;
memberOptions.roles = Array.from(
new Set([...mute.roles_to_restore, ...member.roles.filter(x => x !== muteRole)]),
new Set([...mute.roles_to_restore, ...member.roles.filter(x => x !== muteRole && guildRoles.has(x))]),
);
member.edit(memberOptions);
}

View file

@ -38,8 +38,9 @@ export async function unmuteUser(
}
if (existingMute?.roles_to_restore) {
const memberOptions: MemberOptions = {};
const guildRoles = pluginData.guild.roles;
memberOptions.roles = Array.from(
new Set([...existingMute.roles_to_restore, ...member.roles.filter(x => x !== muteRole)]),
new Set([...existingMute.roles_to_restore, ...member.roles.filter(x => x !== muteRole && guildRoles.has(x))]),
);
member.edit(memberOptions);
}