change_wp_user_id( $user_id ); } $user_id = $transformer->get_wp_user_id(); if ( is_user_disabled( $user_id ) ) { return; } $activity = $transformer->to_activity( $type ); $follower_inboxes = Followers::get_inboxes( $user_id ); $mentioned_inboxes = Mention::get_inboxes( $activity->get_cc() ); $inboxes = array_merge( $follower_inboxes, $mentioned_inboxes ); $inboxes = array_unique( $inboxes ); $json = $activity->to_json(); foreach ( $inboxes as $inbox ) { safe_remote_post( $inbox, $json, $user_id ); } } /** * Send Announces to followers and mentioned users. * * @param mixed $wp_object The ActivityPub Post. * @param string $type The Activity-Type. * * @return void */ public static function send_announce( $wp_object, $type ) { if ( ! in_array( $type, array( 'Create', 'Update' ), true ) ) { return; } if ( is_user_disabled( Users::BLOG_USER_ID ) ) { return; } $transformer = Factory::get_transformer( $wp_object ); $transformer->change_wp_user_id( Users::BLOG_USER_ID ); $user_id = $transformer->get_wp_user_id(); $activity = $transformer->to_activity( 'Announce' ); $follower_inboxes = Followers::get_inboxes( $user_id ); $mentioned_inboxes = Mention::get_inboxes( $activity->get_cc() ); $inboxes = array_merge( $follower_inboxes, $mentioned_inboxes ); $inboxes = array_unique( $inboxes ); $json = $activity->to_json(); foreach ( $inboxes as $inbox ) { safe_remote_post( $inbox, $json, $user_id ); } } }