From 6f3e760c63673eef82025172093bc3beadf9ebbf Mon Sep 17 00:00:00 2001 From: Diogo Peralta Cordeiro Date: Sun, 20 Feb 2022 05:03:05 +0000 Subject: [PATCH] [PLUGIN][ActivityPub][Inbox] Separate handler by method --- plugins/ActivityPub/ActivityPub.php | 2 +- plugins/ActivityPub/Controller/Inbox.php | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/plugins/ActivityPub/ActivityPub.php b/plugins/ActivityPub/ActivityPub.php index 08e99576b3..81b237a395 100644 --- a/plugins/ActivityPub/ActivityPub.php +++ b/plugins/ActivityPub/ActivityPub.php @@ -122,7 +122,7 @@ class ActivityPub extends Plugin $r->connect( 'activitypub_inbox', '/inbox.json', - [Inbox::class, 'handle'], + Inbox::class, options: ['format' => self::$accept_headers[0]], ); $r->connect( diff --git a/plugins/ActivityPub/Controller/Inbox.php b/plugins/ActivityPub/Controller/Inbox.php index 1697e43c97..55ab5c8a07 100644 --- a/plugins/ActivityPub/Controller/Inbox.php +++ b/plugins/ActivityPub/Controller/Inbox.php @@ -36,6 +36,7 @@ use App\Core\Controller; use App\Core\DB\DB; use App\Core\Event; use App\Util\Common; +use Symfony\Component\HttpFoundation\Request; use function App\Core\I18n\_m; use App\Core\Log; use App\Core\Router\Router; @@ -60,10 +61,15 @@ use Plugin\ActivityPub\Util\TypeResponse; */ class Inbox extends Controller { + public function onGet(Request $request, ?int $gsactor_id = null): TypeResponse + { + return new TypeResponse(json_encode(['error' => 'No AP C2S inbox yet.']), 400); + } + /** * Create an Inbox Handler to receive something from someone. */ - public function handle(?int $gsactor_id = null): TypeResponse + public function onPost(Request $request, ?int $gsactor_id = null): TypeResponse { $error = function (string $m, ?Exception $e = null): TypeResponse { Log::error('ActivityPub Error Answer: ' . ($json = json_encode(['error' => $m, 'exception' => var_export($e, true)])));