From 9f2e9dfc1ba0e4b27d2608757f01d27a2283b7c7 Mon Sep 17 00:00:00 2001 From: Michael Date: Sat, 26 Jan 2019 12:09:38 +0000 Subject: [PATCH] Fetchting the original post at first, then the other way is dafer. --- src/Module/Objects.php | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/Module/Objects.php b/src/Module/Objects.php index 3aa8c9e21..558b27491 100644 --- a/src/Module/Objects.php +++ b/src/Module/Objects.php @@ -31,13 +31,14 @@ class Objects extends BaseModule /// @todo Add Authentication to enable fetching of non public content // $requester = HTTPSignature::getSigner('', $_SERVER); - $item = Item::selectFirst(['id', 'author-link'], ['guid' => $a->argv[1], 'private' => false]); + // At first we try the original post with that guid + $item = Item::selectFirst(['id'], ['guid' => $a->argv[1], 'origin' => true, 'private' => false]); if (!DBA::isResult($item)) { - System::httpExit(404); - } - - if (!strstr($item['author-link'], System::baseUrl())) { - System::httpExit(404); + // If no original post could be found, it could possibly be a forum post, there we remove the "origin" field. + $item = Item::selectFirst(['id', 'author-link'], ['guid' => $a->argv[1], 'private' => false]); + if (!DBA::isResult($item) || !strstr($item['author-link'], System::baseUrl())) { + System::httpExit(404); + } } $data = ActivityPub\Transmitter::createObjectFromItemID($item['id']);