X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FWorker%2FProfileUpdate.php;h=e26abf7e20e445fa36ddfa7ab69578dbb55a8857;hb=019bb56668e6c41254b851e2274be0f5c6cf79ea;hp=43c76965d6713bcdb8448b2af19a0afefcd8e66a;hpb=51a29d381f6babcbd18787c72d4e1c702b94c0ec;p=friendica.git diff --git a/src/Worker/ProfileUpdate.php b/src/Worker/ProfileUpdate.php index 43c76965d6..e26abf7e20 100644 --- a/src/Worker/ProfileUpdate.php +++ b/src/Worker/ProfileUpdate.php @@ -1,19 +1,64 @@ . + * */ namespace Friendica\Worker; +use Friendica\Core\Logger; +use Friendica\Core\Worker; +use Friendica\DI; use Friendica\Protocol\Diaspora; +use Friendica\Protocol\ActivityPub; +/** + * Send updated profile data to Diaspora and ActivityPub + */ class ProfileUpdate { - public static function execute($uid = 0) { + /** + * Sends updated profile data to Diaspora and ActivityPub + * + * @param int $uid User id (optional, default: 0) + * @return void + */ + public static function execute(int $uid = 0) + { if (empty($uid)) { return; } - Diaspora::send_profile($uid); + $a = DI::app(); + + $inboxes = ActivityPub\Transmitter::fetchTargetInboxesforUser($uid); + + foreach ($inboxes as $inbox => $receivers) { + Logger::info('Profile update for user ' . $uid . ' to ' . $inbox .' via ActivityPub'); + Worker::add(['priority' => $a->getQueueValue('priority'), 'created' => $a->getQueueValue('created'), 'dont_fork' => true], + 'APDelivery', + Delivery::PROFILEUPDATE, + 0, + $inbox, + $uid, + $receivers + ); + } + + Diaspora::sendProfile($uid); } }