diff options
Diffstat (limited to 'classes/article.php')
-rwxr-xr-x | classes/article.php | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/classes/article.php b/classes/article.php index dd1470caa..acd83694c 100755 --- a/classes/article.php +++ b/classes/article.php @@ -343,6 +343,7 @@ class Article extends Handler_Protected { } $rv = [ + 'formatted' => '', 'entries' => [] ]; @@ -358,12 +359,24 @@ class Article extends Handler_Protected { // this is highly approximate $enc["filename"] = basename($enc["content_url"]); - PluginHost::getInstance()->chain_hooks_callback(PluginHost::HOOK_ENCLOSURE_ENTRY, - function ($result) use (&$enc) { - $enc = $result; + $rendered_enc = ""; + PluginHost::getInstance()->chain_hooks_callback(PluginHost::HOOK_RENDER_ENCLOSURE, + function ($result) use (&$rendered_enc) { + $rendered_enc = $result; }, - $enc, $id); - array_push($rv['entries'], $enc); + $enc, $id, $rv); + + if ($rendered_enc) { + $rv['formatted'] .= $rendered_enc; + } else { + PluginHost::getInstance()->chain_hooks_callback(PluginHost::HOOK_ENCLOSURE_ENTRY, + function ($result) use (&$enc) { + $enc = $result; + }, + $enc, $id, $rv); + + array_push($rv['entries'], $enc); + } } return $rv; |