From b1f9ebe46e5d3ee6894958133819106d43b1411e Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Thu, 10 Jan 2019 08:42:31 +0300 Subject: [PATCH] get_article_image: ignore data: schema images, other minor fixes --- classes/handler/public.php | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/classes/handler/public.php b/classes/handler/public.php index 274936c33..235aba3c6 100755 --- a/classes/handler/public.php +++ b/classes/handler/public.php @@ -323,8 +323,7 @@ class Handler_Public extends Handler { foreach ($enclosures as $enc) { if (strpos($enc["content_type"], "image/") !== FALSE) { - $og_image = $enc["content_url"]; - break; + return rewrite_relative_url($site_url, $enc["content_url"]); } } @@ -333,15 +332,18 @@ class Handler_Public extends Handler { if (@$tmpdoc->loadHTML(mb_substr($content, 0, 131070))) { $tmpxpath = new DOMXPath($tmpdoc); - $first_img = $tmpxpath->query("//img")->item(0); + $imgs = $tmpxpath->query("//img"); - if ($first_img) { - $og_image = $first_img->getAttribute("src"); + foreach ($imgs as $img) { + $src = $img->getAttribute("src"); + + if (mb_strpos($src, "data:") !== 0) + return rewrite_relative_url($site_url, $src); } } } - return rewrite_relative_url($site_url, $og_image); + return false; } private function format_article($id, $owner_uid) {