Fix fetching members for roles in POST message

This commit is contained in:
Madeline 2022-09-29 21:27:33 +10:00
parent 357aada969
commit 835a5ab3a3
2 changed files with 21 additions and 16 deletions

View File

@ -255,17 +255,22 @@ router.post(
); );
} }
const member = await Member.findOneOrFail({ if (message.guild_id) {
where: { id: req.user_id }, // handleMessage will fetch the Member, but only if they are not guild owner.
relations: ["roles"], // have to fetch ourselves otherwise.
if (!message.member) {
message.member = await Member.findOneOrFail({
where: { id: req.user_id, guild_id: message.guild_id },
relations: ["roles"]
}); });
member.roles = member.roles }
.filter((role: Role) => {
return role.id !== role.guild_id; //@ts-ignore
}) message.member.roles =
.map((role: Role) => { message.member.roles.
return role.id; filter(x => x.id != x.guild_id)
}) as any; .map(x => x.id);
}
let read_state = await ReadState.findOne({ let read_state = await ReadState.findOne({
where: { user_id: req.user_id, channel_id } where: { user_id: req.user_id, channel_id }