*/
public function createSharedBlockByArray(array $item): string
{
- if (!in_array($item['network'] ?? '', Protocol::FEDERATED)) {
+ if ($item['network'] == Protocol::FEED) {
+ return PageInfo::getFooterFromUrl($item['plink']);
+ } elseif (!in_array($item['network'] ?? '', Protocol::FEDERATED)) {
$item['guid'] = '';
$item['uri'] = '';
+ $item['body'] = Post\Media::addAttachmentsToBody($item['uri-id'], $item['body']);
}
$shared_content = BBCode::getShareOpeningTag($item['author-name'], $item['author-link'], $item['author-avatar'], $item['plink'], $item['created'], $item['guid'], $item['uri']);
$shared_content .= '[h3]' . $item['title'] . "[/h3]\n";
}
+ $shared = BBCode::fetchShareAttributes($item['body']);
+
// If it is a reshared post then reformat it to avoid display problems with two share elements
if (Diaspora::isReshare($item['body'], false)) {
+ if (!empty($shared['guid']) && ($encaspulated_share = self::createSharedPostByGuid($shared['guid']))) {
+ $item['body'] = preg_replace("/\[share.*?\](.*)\[\/share\]/ism", $encaspulated_share, $item['body']);
+ }
+
$item['body'] = HTML::toBBCode(BBCode::convertForUriId($item['uri-id'], $item['body'], BBCode::ACTIVITYPUB));
}