Permissions: Resolve guild, allows ability to delete channels, delete others messages, etc.

This commit is contained in:
Paul
2021-06-02 12:35:01 +01:00
parent 1713ad057d
commit 812fa2a98f
3 changed files with 17 additions and 3 deletions

View File

@@ -40,7 +40,7 @@ impl<'a> PermissionCalculator<'a> {
match channel {
Channel::SavedMessages { user: owner, .. } => {
if &self.perspective.id == owner {
Ok(u32::MAX - ChannelPermission::VoiceCall as u32)
Ok(u32::MAX)
} else {
Ok(0)
}
@@ -81,8 +81,14 @@ impl<'a> PermissionCalculator<'a> {
Ok(0)
}
}
Channel::TextChannel { .. } => {
Ok(ChannelPermission::View + ChannelPermission::SendMessage)
Channel::TextChannel { server, .. } => {
let server = Server::get(server).await?;
if self.perspective.id == server.owner {
Ok(u32::MAX)
} else {
Ok(ChannelPermission::View + ChannelPermission::SendMessage)
}
}
}
}