- async fn read_from_apub_id(
- _object_id: Url,
- data: &Self::DataType,
- ) -> Result<Option<Self>, LemmyError> {
- // Only read from database if its a local community, otherwise fetch over http
- if data.0.local {
- let cid = data.0.id;
- let moderators = blocking(data.1.pool(), move |conn| {
- CommunityModeratorView::for_community(conn, cid)
- })
- .await??;
- Ok(Some(ApubCommunityModerators(moderators)))
- } else {
- Ok(None)
- }
- }
-
- #[tracing::instrument(skip_all)]
- async fn delete(self, _data: &Self::DataType) -> Result<(), LemmyError> {
- unimplemented!()
- }
-
- #[tracing::instrument(skip_all)]
- async fn into_apub(self, data: &Self::DataType) -> Result<Self::ApubType, LemmyError> {
- let ordered_items = self
- .0
+ async fn read_local(
+ owner: &Self::Owner,
+ data: &Data<Self::DataType>,
+ ) -> Result<Self::Kind, LemmyError> {
+ let moderators = CommunityModeratorView::for_community(&mut data.pool(), owner.id).await?;
+ let ordered_items = moderators