From eefebaff49822d702f647e4e3896597705aaec36 Mon Sep 17 00:00:00 2001 From: Michael Date: Wed, 15 Mar 2023 21:15:10 +0000 Subject: [PATCH] Improved handling of images with links --- src/Model/Post/Media.php | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/Model/Post/Media.php b/src/Model/Post/Media.php index 3396b642f8..221a11a700 100644 --- a/src/Model/Post/Media.php +++ b/src/Model/Post/Media.php @@ -470,10 +470,12 @@ class Media * Add media links and remove them from the body * * @param integer $uriid - * @param string $body + * @param string $body + * @param bool $endmatch + * @param bool $removepicturelinks * @return string Body without media links */ - public static function insertFromBody(int $uriid, string $body, bool $endmatch = false): string + public static function insertFromBody(int $uriid, string $body, bool $endmatch = false, bool $removepicturelinks = false): string { $endmatchpattern = $endmatch ? '\z' : ''; // Simplify image codes @@ -489,7 +491,7 @@ class Media 'uri-id' => $uriid, 'type' => self::IMAGE, 'url' => $image, 'preview' => $picture[2], 'description' => $picture[3] ]; - } else { + } elseif ($removepicturelinks) { $body = str_replace($picture[0], '', $body); $attachments[$picture[1]] = [ 'uri-id' => $uriid, 'type' => self::UNKNOWN, 'url' => $picture[1], @@ -515,7 +517,7 @@ class Media 'uri-id' => $uriid, 'type' => self::IMAGE, 'url' => $image, 'preview' => $picture[2], 'description' => null ]; - } else { + } elseif ($removepicturelinks) { $body = str_replace($picture[0], '', $body); $attachments[$picture[1]] = [ 'uri-id' => $uriid, 'type' => self::UNKNOWN, 'url' => $picture[1], @@ -587,7 +589,7 @@ class Media { do { $prebody = $body; - $body = self::insertFromBody(0, $body); + $body = self::insertFromBody(0, $body, false, true); } while ($prebody != $body); return $body; }