fix: a couple more minor reproxy fixes

This commit is contained in:
Ske
2022-06-06 00:59:53 +02:00
parent 6511c04c6c
commit 51fb561841
4 changed files with 12 additions and 10 deletions

View File

@@ -211,16 +211,17 @@ public class ProxyService
{
Member = member,
Content = prevMatched ? prevMatch.Content : originalMsg.Content,
ProxyTags = member.ProxyTags.First(),
ProxyTags = member.ProxyTags.FirstOrDefault(),
};
var messageChannel = await _rest.GetChannelOrNull(msg.Channel!);
var rootChannel = messageChannel.IsThread() ? await _rest.GetChannelOrNull(messageChannel.ParentId!.Value) : messageChannel;
var threadId = messageChannel.IsThread() ? messageChannel.Id : (ulong?)null;
var guild = await _rest.GetGuildOrNull(msg.Guild!.Value);
var guildMember = await _rest.GetGuildMember(msg.Guild!.Value, trigger.Author.Id);
// Grab user permissions (the MessageCreateEvent cast is gross but so is our permission handling rn)
var senderPermissions = PermissionExtensions.PermissionsFor(guild, rootChannel, trigger.Author.Id, ((MessageCreateEvent) trigger).Member);
// Grab user permissions
var senderPermissions = PermissionExtensions.PermissionsFor(guild, rootChannel, trigger.Author.Id, guildMember);
var allowEveryone = senderPermissions.HasFlag(PermissionSet.MentionEveryone);
// Make sure user has permissions to send messages
@@ -373,8 +374,8 @@ public class ProxyService
{
var sentMessage = new PKMessage
{
Channel = triggerMessage.ChannelId,
Guild = triggerMessage.GuildId,
Channel = proxyMessage.ChannelId,
Guild = proxyMessage.GuildId,
Member = match.Member.Id,
Mid = proxyMessage.Id,
OriginalMid = triggerMessage.Id,