forked from jmug/stoatchat
fix(delta): MemberResponse only include roles member has
This commit is contained in:
@@ -22,10 +22,14 @@ impl AbstractServerMember for MongoDb {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async fn fetch_member_with_roles(&self, server: &str, user: &str) -> Result<MemberWithRoles> {
|
async fn fetch_member_with_roles(&self, server: &str, user: &str) -> Result<MemberWithRoles> {
|
||||||
Ok(self
|
let member = self.fetch_member(server, user).await?;
|
||||||
.fetch_member(server, user)
|
let server_roles = self.fetch_server(server).await?.roles;
|
||||||
.await?
|
let roles = member
|
||||||
.with_roles(self.fetch_server(server).await?.roles))
|
.roles
|
||||||
|
.iter()
|
||||||
|
.filter_map(|id| server_roles.get(id).map(|r| (id.clone(), r.clone())))
|
||||||
|
.collect();
|
||||||
|
Ok(MemberWithRoles { member, roles })
|
||||||
}
|
}
|
||||||
|
|
||||||
async fn insert_member(&self, member: &Member) -> Result<()> {
|
async fn insert_member(&self, member: &Member) -> Result<()> {
|
||||||
|
|||||||
Reference in New Issue
Block a user