]> git.mxchange.org Git - friendica.git/blobdiff - src/Model/Item.php
Merge pull request #12604 from nupplaphil/bug/marco_r
[friendica.git] / src / Model / Item.php
index 33ba8ee7a4d1b849631bec1e245d17c4f91f8fc9..039a106e7d1750a908258bb8df2228082a9d8815 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * @copyright Copyright (C) 2010-2022, the Friendica project
+ * @copyright Copyright (C) 2010-2023, the Friendica project
  *
  * @license GNU AGPL version 3 or any later version
  *
@@ -33,6 +33,7 @@ use Friendica\Database\DBA;
 use Friendica\DI;
 use Friendica\Protocol\Activity;
 use Friendica\Protocol\ActivityPub;
+use Friendica\Protocol\Delivery;
 use Friendica\Protocol\Diaspora;
 use Friendica\Util\DateTimeFormat;
 use Friendica\Util\Map;
@@ -40,7 +41,6 @@ use Friendica\Util\Network;
 use Friendica\Util\Proxy;
 use Friendica\Util\Strings;
 use Friendica\Util\Temporal;
-use Friendica\Worker\Delivery;
 use GuzzleHttp\Psr7\Uri;
 use LanguageDetection\Language;
 
@@ -3016,6 +3016,8 @@ class Item
                $item['hashtags'] = $tags['hashtags'];
                $item['mentions'] = $tags['mentions'];
 
+               $item['body'] = preg_replace("#\s*\[attachment .*?].*?\[/attachment]\s*#ism", "\n", $item['body']);
+
                if (!$is_preview) {
                        $item['body'] = Post\Media::removeFromEndOfBody($item['body'] ?? '');
                }
@@ -3030,6 +3032,7 @@ class Item
                $shared = DI::contentItem()->getSharedPost($item, $fields);
                if (!empty($shared['post'])) {
                        $shared_item  = $shared['post'];
+                       $shared_item['body'] = Post\Media::removeFromEndOfBody($shared_item['body']);
                        $quote_uri_id = $shared['post']['uri-id'];
                        $shared_links[] = strtolower($shared['post']['uri']);
                        $item['body'] = BBCode::removeSharedData($item['body']);
@@ -3064,8 +3067,6 @@ class Item
                $attachments = Post\Media::splitAttachments($item['uri-id'], $shared_links, $item['has-media'] ?? false);
                $item['body'] = self::replaceVisualAttachments($attachments, $item['body'] ?? '');
 
-               $item['body'] = preg_replace("/\s*\[attachment .*?\].*?\[\/attachment\]\s*/ism", "\n", $item['body']);
-
                self::putInCache($item);
                $item['body'] = $body;
                $s = $item["rendered-html"];
@@ -3165,7 +3166,7 @@ class Item
                        ],
                ]);
        }
-       
+
 
        /**
         * Check if the body contains a link
@@ -3448,13 +3449,15 @@ class Item
                                }
 
                                // @todo Use a template
-                               $preview_mode =  DI::pConfig()->get(DI::userSession()->getLocalUserId(), 'system', 'preview_mode', BBCode::PREVIEW_LARGE);
+                               $preview_mode = DI::pConfig()->get(DI::userSession()->getLocalUserId(), 'system', 'preview_mode', BBCode::PREVIEW_LARGE);
                                if ($preview_mode != BBCode::PREVIEW_NONE) {
                                        $rendered = BBCode::convertAttachment('', BBCode::INTERNAL, false, $data, $uriid, $preview_mode);
+                               } else {
+                                       $rendered = '';
                                }
                        } elseif (!self::containsLink($content, $data['url'], Post\Media::HTML)) {
                                $rendered = Renderer::replaceMacros(Renderer::getMarkupTemplate('content/link.tpl'), [
-                                       '$url'  => $data['url'],
+                                       '$url'   => $data['url'],
                                        '$title' => $data['title'],
                                ]);
                        } else {