diff options
| author | 2024-04-08 11:10:10 +0200 | |
|---|---|---|
| committer | 2024-04-08 11:10:10 +0200 | |
| commit | 283341e75e6ef4fbb3c522635b8a7805d3ab3a20 (patch) | |
| tree | b207210f38b6c3f3c90b4c0bf4c330ab61b0c078 /app/Models/Entry.php | |
| parent | c052149e5aa6eccdafd70f1e85e56cc4dd57ed8b (diff) | |
Allow multiple authors on enclosures (#6272)
fix https://github.com/FreshRSS/FreshRSS/issues/5066
Diffstat (limited to 'app/Models/Entry.php')
| -rw-r--r-- | app/Models/Entry.php | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/app/Models/Entry.php b/app/Models/Entry.php index e5e859a1d..c5a9ddc7e 100644 --- a/app/Models/Entry.php +++ b/app/Models/Entry.php @@ -201,7 +201,7 @@ HTML; if (!$allowDuplicateEnclosures && self::containsLink($content, $elink)) { continue; } - $credit = $enclosure['credit'] ?? ''; + $credits = $enclosure['credit'] ?? ''; $description = nl2br($enclosure['description'] ?? '', true); $length = $enclosure['length'] ?? 0; $medium = $enclosure['medium'] ?? ''; @@ -238,8 +238,13 @@ HTML; . '" title="' . $etitle . '">💾</a></p>'; } - if ($credit != '') { - $content .= '<p class="enclosure-credits">© ' . $credit . '</p>'; + if ($credits != '') { + if (!is_array($credits)) { + $credits = [$credits]; + } + foreach ($credits as $credit) { + $content .= '<p class="enclosure-credits">© ' . $credit . '</p>'; + } } if ($description != '') { $content .= '<figcaption class="enclosure-description">' . $description . '</figcaption>'; @@ -250,7 +255,7 @@ HTML; return $content; } - /** @return Traversable<array{'url':string,'type'?:string,'medium'?:string,'length'?:int,'title'?:string,'description'?:string,'credit'?:string,'height'?:int,'width'?:int,'thumbnails'?:array<string>}> */ + /** @return Traversable<array{'url':string,'type'?:string,'medium'?:string,'length'?:int,'title'?:string,'description'?:string,'credit'?:string|array<string>,'height'?:int,'width'?:int,'thumbnails'?:array<string>}> */ public function enclosures(bool $searchBodyImages = false): Traversable { $attributeEnclosures = $this->attributeArray('enclosures'); if (is_iterable($attributeEnclosures)) { |
