From 7d0ebe8bbe8c0ee4466d0561de22c2370fb9df2e Mon Sep 17 00:00:00 2001 From: Michael Date: Mon, 10 Jun 2019 16:06:54 +0000 Subject: [PATCH] Fix the detection of image posts --- src/Content/Text/BBCode.php | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Content/Text/BBCode.php b/src/Content/Text/BBCode.php index 6805369d08..0d83b665cd 100644 --- a/src/Content/Text/BBCode.php +++ b/src/Content/Text/BBCode.php @@ -251,8 +251,12 @@ class BBCode extends BaseObject if (preg_match_all("(\[url=([$URLSearchString]*)\]\s*\[img\]([$URLSearchString]*)\[\/img\]\s*\[\/url\])ism", $body, $pictures, PREG_SET_ORDER)) { if ((count($pictures) == 1) && !$has_title) { - // Checking, if the link goes to a picture - $data = ParseUrl::getSiteinfoCached($pictures[0][1], true); + if (!empty($item['object-type']) && ($item['object-type'] == ACTIVITY_OBJ_IMAGE)) { + $data = ['url' => $pictures[0][1], 'type' => 'photo']; + } else { + // Checking, if the link goes to a picture + $data = ParseUrl::getSiteinfoCached($pictures[0][1], true); + } // Workaround: // Sometimes photo posts to the own album are not detected at the start. @@ -271,14 +275,14 @@ class BBCode extends BaseObject } $post["preview"] = $pictures[0][2]; - $post["text"] = str_replace($pictures[0][0], "", $body); + $post["text"] = trim(str_replace($pictures[0][0], "", $body)); } else { $imgdata = Image::getInfoFromURL($pictures[0][1]); if ($imgdata && substr($imgdata["mime"], 0, 6) == "image/") { $post["type"] = "photo"; $post["image"] = $pictures[0][1]; $post["preview"] = $pictures[0][2]; - $post["text"] = str_replace($pictures[0][0], "", $body); + $post["text"] = trim(str_replace($pictures[0][0], "", $body)); } } } elseif (count($pictures) > 0) { -- 2.39.5