X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModule%2FObjects.php;h=bb68adeb3bb8cf7b35563e05ca03f840f835fc78;hb=4719af67245293c94bd4c4cb75e242841ed32ab6;hp=4262e4e0054696b1431757bba83861312df4266e;hpb=1146d9127ec7da8c855840b8f876f9485bdf79c7;p=friendica.git diff --git a/src/Module/Objects.php b/src/Module/Objects.php index 4262e4e005..bb68adeb3b 100644 --- a/src/Module/Objects.php +++ b/src/Module/Objects.php @@ -47,7 +47,7 @@ class Objects extends BaseModule DI::baseUrl()->redirect(str_replace('objects/', 'display/', DI::args()->getQueryString())); } - $item = Item::selectFirst(['id', 'uid', 'origin', 'author-link', 'changed', 'private', 'psid'], + $item = Item::selectFirst(['id', 'uid', 'origin', 'author-link', 'changed', 'private', 'psid', 'gravity'], ['guid' => $parameters['guid']], ['order' => ['origin' => true]]); if (!DBA::isResult($item)) { @@ -80,7 +80,7 @@ class Objects extends BaseModule $last_modified = $item['changed']; Network::checkEtagModified($etag, $last_modified); - if (empty($parameters['activity'])) { + if (empty($parameters['activity']) && ($item['gravity'] != GRAVITY_ACTIVITY)) { $activity = ActivityPub\Transmitter::createActivityFromItem($item['id'], true); $activity['type'] = $activity['type'] == 'Update' ? 'Create' : $activity['type']; @@ -91,13 +91,14 @@ class Objects extends BaseModule $data = ['@context' => ActivityPub::CONTEXT]; $data = array_merge($data, $activity['object']); - } elseif (in_array($parameters['activity'], ['Create', 'Announce', 'Update', - 'Like', 'Dislike', 'Accept', 'Reject', 'TentativeAccept', 'Follow', 'Add'])) { + } elseif (empty($parameters['activity']) || in_array($parameters['activity'], + ['Create', 'Announce', 'Update', 'Like', 'Dislike', 'Accept', 'Reject', + 'TentativeAccept', 'Follow', 'Add'])) { $data = ActivityPub\Transmitter::createActivityFromItem($item['id']); if (empty($data)) { throw new HTTPException\NotFoundException(); } - if ($parameters['activity'] != 'Create') { + if (!empty($parameters['activity']) && ($parameters['activity'] != 'Create')) { $data['type'] = $parameters['activity']; $data['id'] = str_replace('/Create', '/' . $parameters['activity'], $data['id']); }