Fetch community mods synchronously (#5169)
* Fetch community mods synchronously * fix * fix --------- Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
This commit is contained in:
parent
dce6c6bbf0
commit
542e59bcae
1 changed files with 8 additions and 5 deletions
|
@ -194,10 +194,16 @@ impl Object for ApubCommunity {
|
||||||
LanguageTag::to_language_id_multiple(group.language, &mut context.pool()).await?;
|
LanguageTag::to_language_id_multiple(group.language, &mut context.pool()).await?;
|
||||||
|
|
||||||
let timestamp = group.updated.or(group.published).unwrap_or_else(naive_now);
|
let timestamp = group.updated.or(group.published).unwrap_or_else(naive_now);
|
||||||
let community = Community::insert_apub(&mut context.pool(), timestamp, &form).await?;
|
let community: ApubCommunity = Community::insert_apub(&mut context.pool(), timestamp, &form)
|
||||||
|
.await?
|
||||||
|
.into();
|
||||||
CommunityLanguage::update(&mut context.pool(), languages, community.id).await?;
|
CommunityLanguage::update(&mut context.pool(), languages, community.id).await?;
|
||||||
|
|
||||||
let community: ApubCommunity = community.into();
|
// Need to fetch mods synchronously, otherwise fetching a post in community with
|
||||||
|
// `posting_restricted_to_mods` can fail if mods havent been fetched yet.
|
||||||
|
if let Some(moderators) = group.attributed_to {
|
||||||
|
moderators.dereference(&community, context).await.ok();
|
||||||
|
}
|
||||||
|
|
||||||
// These collections are not necessary for Lemmy to work, so ignore errors.
|
// These collections are not necessary for Lemmy to work, so ignore errors.
|
||||||
let community_ = community.clone();
|
let community_ = community.clone();
|
||||||
|
@ -210,9 +216,6 @@ impl Object for ApubCommunity {
|
||||||
if let Some(featured) = group.featured {
|
if let Some(featured) = group.featured {
|
||||||
featured.dereference(&community_, &context_).await.ok();
|
featured.dereference(&community_, &context_).await.ok();
|
||||||
}
|
}
|
||||||
if let Some(moderators) = group.attributed_to {
|
|
||||||
moderators.dereference(&community_, &context_).await.ok();
|
|
||||||
}
|
|
||||||
Ok(())
|
Ok(())
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue