mirror of
https://github.com/stoatchat/stoatchat.git
synced 2026-07-14 13:36:59 +00:00
Servers: Add TextChannel.
This commit is contained in:
@@ -50,6 +50,18 @@ pub enum Channel {
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
last_message: Option<LastMessage>,
|
||||
},
|
||||
TextChannel {
|
||||
#[serde(rename = "_id")]
|
||||
id: String,
|
||||
server: String,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
nonce: Option<String>,
|
||||
|
||||
name: String,
|
||||
description: Option<String>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
icon: Option<File>,
|
||||
}
|
||||
}
|
||||
|
||||
impl Channel {
|
||||
@@ -57,7 +69,8 @@ impl Channel {
|
||||
match self {
|
||||
Channel::SavedMessages { id, .. }
|
||||
| Channel::DirectMessage { id, .. }
|
||||
| Channel::Group { id, .. } => id,
|
||||
| Channel::Group { id, .. }
|
||||
| Channel::TextChannel { id, .. } => id,
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -43,9 +43,10 @@ pub struct Server {
|
||||
|
||||
pub name: String,
|
||||
// pub default_permissions: u32,
|
||||
pub channels: Vec<String>,
|
||||
// pub invites: Vec<Invite>,
|
||||
// pub bans: Vec<Ban>,
|
||||
pub channels: Vec<String>,
|
||||
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub icon: Option<File>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
|
||||
@@ -81,6 +81,9 @@ impl<'a> PermissionCalculator<'a> {
|
||||
Ok(0)
|
||||
}
|
||||
}
|
||||
Channel::TextChannel { .. } => {
|
||||
Ok(ChannelPermission::View + ChannelPermission::SendMessage)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user