|
|
|
@ -1,19 +1,3 @@
|
|
|
|
|
use crate::{
|
|
|
|
|
activities::{
|
|
|
|
|
block::{generate_cc, SiteOrCommunity},
|
|
|
|
|
community::{announce::GetCommunity, send_activity_in_community},
|
|
|
|
|
generate_activity_id,
|
|
|
|
|
send_lemmy_activity,
|
|
|
|
|
verify_is_public,
|
|
|
|
|
},
|
|
|
|
|
activity_lists::AnnouncableActivities,
|
|
|
|
|
check_apub_id_valid,
|
|
|
|
|
fetch_local_site_data,
|
|
|
|
|
local_instance,
|
|
|
|
|
objects::{community::ApubCommunity, instance::remote_instance_inboxes, person::ApubPerson},
|
|
|
|
|
protocol::activities::block::{block_user::BlockUser, undo_block_user::UndoBlockUser},
|
|
|
|
|
ActorType,
|
|
|
|
|
};
|
|
|
|
|
use activitypub_federation::{
|
|
|
|
|
core::object_id::ObjectId,
|
|
|
|
|
data::Data,
|
|
|
|
@ -34,6 +18,21 @@ use lemmy_utils::error::LemmyError;
|
|
|
|
|
use lemmy_websocket::LemmyContext;
|
|
|
|
|
use url::Url;
|
|
|
|
|
|
|
|
|
|
use crate::{
|
|
|
|
|
activities::{
|
|
|
|
|
block::{generate_cc, SiteOrCommunity},
|
|
|
|
|
community::{announce::GetCommunity, send_activity_in_community},
|
|
|
|
|
generate_activity_id,
|
|
|
|
|
send_lemmy_activity,
|
|
|
|
|
verify_is_public,
|
|
|
|
|
},
|
|
|
|
|
activity_lists::AnnouncableActivities,
|
|
|
|
|
local_instance,
|
|
|
|
|
objects::{community::ApubCommunity, instance::remote_instance_inboxes, person::ApubPerson},
|
|
|
|
|
protocol::activities::block::{block_user::BlockUser, undo_block_user::UndoBlockUser},
|
|
|
|
|
ActorType,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
impl UndoBlockUser {
|
|
|
|
|
#[tracing::instrument(skip_all)]
|
|
|
|
|
pub async fn send(
|
|
|
|
@ -92,10 +91,6 @@ impl ActivityHandler for UndoBlockUser {
|
|
|
|
|
context: &Data<LemmyContext>,
|
|
|
|
|
request_counter: &mut i32,
|
|
|
|
|
) -> Result<(), LemmyError> {
|
|
|
|
|
let local_site_data = blocking(context.pool(), fetch_local_site_data).await??;
|
|
|
|
|
check_apub_id_valid(self.id(), &local_site_data, context.settings())
|
|
|
|
|
.map_err(LemmyError::from_message)?;
|
|
|
|
|
|
|
|
|
|
verify_is_public(&self.to, &self.cc)?;
|
|
|
|
|
verify_domains_match(self.actor.inner(), self.object.actor.inner())?;
|
|
|
|
|
self.object.verify(context, request_counter).await?;
|
|
|
|
|