X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FProtocol%2FActivityPub%2FProcessor.php;h=e6f3e156690042bd1701c20c9d662b181238c048;hb=befc2af5043a3afde251721c0d27df695db1bb7e;hp=9e8ea2976e5ad3046c5f5c18e4acaddd11a0780b;hpb=c1226bff071c38e708e91f5ba07436c88cfaa737;p=friendica.git diff --git a/src/Protocol/ActivityPub/Processor.php b/src/Protocol/ActivityPub/Processor.php index 9e8ea2976e..e6f3e15669 100644 --- a/src/Protocol/ActivityPub/Processor.php +++ b/src/Protocol/ActivityPub/Processor.php @@ -1,6 +1,6 @@ $activity['target_id'], 'uid' => $receiver]); + $item = Post::selectFirst(['id', 'uri-id', 'origin', 'author-link'], ['uri' => $activity['target_id'], 'uid' => $receiver]); if (!DBA::isResult($item)) { // We don't fetch missing content for this purpose continue; @@ -463,9 +498,21 @@ class Processor */ private static function processContent($activity, $item) { - $item['title'] = HTML::toBBCode($activity['name']); + if (!empty($activity['mediatype']) && ($activity['mediatype'] == 'text/markdown')) { + $item['title'] = Markdown::toBBCode($activity['name']); + $content = Markdown::toBBCode($activity['content']); + } elseif (!empty($activity['mediatype']) && ($activity['mediatype'] == 'text/bbcode')) { + $item['title'] = $activity['name']; + $content = $activity['content']; + } else { + // By default assume "text/html" + $item['title'] = HTML::toBBCode($activity['name']); + $content = HTML::toBBCode($activity['content']); + } - $content = HTML::toBBCode($activity['content']); + if (!empty($activity['languages'])) { + $item['language'] = self::processLanguages($activity['languages']); + } if (!empty($activity['emojis'])) { $content = self::replaceEmojis($content, $activity['emojis']); @@ -868,8 +915,9 @@ class Processor } $replyto = JsonLD::fetchElement($activity['as:object'], 'as:inReplyTo', '@id'); - if (Post::exists(['uri' => $replyto])) { - Logger::info('Post is a reply to an existing post - accepted', ['id' => $id, 'replyto' => $replyto]); + $uriid = ItemURI::getIdByURI($replyto); + if (Post::exists(['uri-id' => $uriid])) { + Logger::info('Post is a reply to an existing post - accepted', ['id' => $id, 'uri-id' => $uriid, 'replyto' => $replyto]); return true; } @@ -1142,7 +1190,7 @@ class Processor $implicit_mentions = []; if (empty($parent_author['url'])) { - Logger::notice('Author public contact unknown.', ['author-link' => $parent['author-link'], 'item-id' => $parent['id']]); + Logger::notice('Author public contact unknown.', ['author-link' => $parent['author-link'], 'parent-id' => $parent['id']]); } else { $implicit_mentions[] = $parent_author['url']; $implicit_mentions[] = $parent_author['nurl'];