- let person_view = blocking(context.pool(), move |conn| {
- PersonViewSafe::read(conn, person_id)
- })
- .await??;
-
- let site = SiteOrCommunity::Site(
- blocking(context.pool(), Site::read_local_site)
- .await??
- .into(),
- );
- // if the action affects a local user, federate to other instances
- if person.local {
- if ban {
- BlockUser::send(
- &site,
- &person.into(),
- &local_user_view.person.into(),
- remove_data,
- data.reason.clone(),
- expires,
- context,
- )
- .await?;
- } else {
- UndoBlockUser::send(
- &site,
- &person.into(),
- &local_user_view.person.into(),
- data.reason.clone(),
- context,
- )
- .await?;
- }
- }