From b630d530f4a6164f5ae653696fea22fb57841798 Mon Sep 17 00:00:00 2001 From: Diogo Peralta Cordeiro Date: Fri, 25 Feb 2022 13:52:21 +0000 Subject: [PATCH] [PLUGIN][ActivityPub][Postman] JSON_UNESCAPED_SLASHES Only record webfinger matches for acct --- plugins/ActivityPub/ActivityPub.php | 12 +++++++----- plugins/ActivityPub/Util/Model.php | 2 +- plugins/ActivityPub/Util/Model/Activity.php | 2 +- plugins/ActivityPub/Util/Model/Actor.php | 2 +- plugins/ActivityPub/Util/Model/Note.php | 2 +- 5 files changed, 11 insertions(+), 9 deletions(-) diff --git a/plugins/ActivityPub/ActivityPub.php b/plugins/ActivityPub/ActivityPub.php index 1663b1818a..acd415bc3d 100644 --- a/plugins/ActivityPub/ActivityPub.php +++ b/plugins/ActivityPub/ActivityPub.php @@ -333,11 +333,13 @@ class ActivityPub extends Plugin } else { array_push($delivered, ...$dummy); foreach ($dummy as $actor) { - FreeNetworkActorProtocol::protocolSucceeded( - 'activitypub', - $actor, - Discovery::normalize($actor->getNickname() . '@' . parse_url($inbox, \PHP_URL_HOST)), - ); + if ($actor->isPerson()) { + FreeNetworkActorProtocol::protocolSucceeded( + 'activitypub', + $actor, + Discovery::normalize($actor->getNickname() . '@' . parse_url($inbox, \PHP_URL_HOST)), + ); + } } } } catch (Exception $e) { diff --git a/plugins/ActivityPub/Util/Model.php b/plugins/ActivityPub/Util/Model.php index 2392413607..67715f3808 100644 --- a/plugins/ActivityPub/Util/Model.php +++ b/plugins/ActivityPub/Util/Model.php @@ -121,7 +121,7 @@ abstract class Model * * @throws ClientException */ - public static function toJson(mixed $object, ?int $options = null): string + public static function toJson(mixed $object, int $options = \JSON_UNESCAPED_SLASHES): string { switch ($object::class) { case \App\Entity\Activity::class: diff --git a/plugins/ActivityPub/Util/Model/Activity.php b/plugins/ActivityPub/Util/Model/Activity.php index e6f4bf57e4..200e96dbe2 100644 --- a/plugins/ActivityPub/Util/Model/Activity.php +++ b/plugins/ActivityPub/Util/Model/Activity.php @@ -145,7 +145,7 @@ class Activity extends Model * * @throws ClientException */ - public static function toJson(mixed $object, ?int $options = null): string + public static function toJson(mixed $object, int $options = \JSON_UNESCAPED_SLASHES): string { if ($object::class !== GSActivity::class) { throw new InvalidArgumentException('First argument type must be an Activity.'); diff --git a/plugins/ActivityPub/Util/Model/Actor.php b/plugins/ActivityPub/Util/Model/Actor.php index 409966c36a..6eba6c9fe9 100644 --- a/plugins/ActivityPub/Util/Model/Actor.php +++ b/plugins/ActivityPub/Util/Model/Actor.php @@ -203,7 +203,7 @@ class Actor extends Model * * @throws ServerException */ - public static function toJson(mixed $object, ?int $options = null): string + public static function toJson(mixed $object, int $options = \JSON_UNESCAPED_SLASHES): string { if ($object::class !== GSActor::class) { throw new InvalidArgumentException('First argument type must be an Actor.'); diff --git a/plugins/ActivityPub/Util/Model/Note.php b/plugins/ActivityPub/Util/Model/Note.php index ebe4844475..8867ac383b 100644 --- a/plugins/ActivityPub/Util/Model/Note.php +++ b/plugins/ActivityPub/Util/Model/Note.php @@ -337,7 +337,7 @@ class Note extends Model * @throws InvalidArgumentException * @throws ServerException */ - public static function toJson(mixed $object, ?int $options = null): string + public static function toJson(mixed $object, int $options = \JSON_UNESCAPED_SLASHES): string { if ($object::class !== GSNote::class) { throw new InvalidArgumentException('First argument type must be a Note.');