From: Michael Date: Sun, 20 Jan 2019 21:52:43 +0000 (+0000) Subject: AP: Only reshare stuff that is AP content X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=e5d694f7fabd19ab61d3b35f1a1a3556edf66092;p=friendica.git AP: Only reshare stuff that is AP content --- diff --git a/src/Protocol/ActivityPub/Transmitter.php b/src/Protocol/ActivityPub/Transmitter.php index be2337ff76..cab0030577 100644 --- a/src/Protocol/ActivityPub/Transmitter.php +++ b/src/Protocol/ActivityPub/Transmitter.php @@ -548,7 +548,18 @@ class Transmitter */ private static function getTypeOfItem($item) { - if (!empty(Diaspora::isReshare($item['body'], false))) { + $reshared = false; + + // Only check for a reshare, if it is a real reshare and no quoted reshare + if (strpos($item['body'], "[share") === 0) { + $announce = api_share_as_retweet($item); + if (!empty($announce['plink'])) { + $data = ActivityPub::fetchContent($announce['plink'], $item['uid']); + $reshared = !empty($data); + } + } + + if ($reshared) { $type = 'Announce'; } elseif ($item['verb'] == ACTIVITY_POST) { if ($item['created'] == $item['edited']) { @@ -1018,6 +1029,7 @@ class Transmitter return self::createNote($item); } + /// @todo Better fetch the real object url. return $announce['plink']; }