af_redditimgur: check gfycat content type before embedding, add generic
catchall embedding for og:video metadata
This commit is contained in:
parent
f43ce66e65
commit
4bb651a656
|
@ -135,9 +135,13 @@ class Af_RedditImgur extends Plugin {
|
|||
$source_stream = 'https://giant.gfycat.com/' . $matches[2] . '.mp4';
|
||||
$poster_url = 'https://thumbs.gfycat.com/' . $matches[2] . '-mobile.jpg';
|
||||
|
||||
$content_type = $this->get_content_type($source_stream);
|
||||
|
||||
if (strpos($content_type, "video/") !== FALSE) {
|
||||
$this->handle_as_video($doc, $entry, $source_stream, $poster_url);
|
||||
$found = 1;
|
||||
}
|
||||
}
|
||||
|
||||
if (!$found && preg_match("/https?:\/\/v\.redd\.it\/(.*)$/i", $entry->getAttribute("href"), $matches)) {
|
||||
|
||||
|
@ -303,8 +307,25 @@ class Af_RedditImgur extends Plugin {
|
|||
$cxpath = new DOMXPath($cdoc);
|
||||
|
||||
$og_image = $cxpath->query("//meta[@property='og:image']")->item(0);
|
||||
$og_video = $cxpath->query("//meta[@property='og:video']")->item(0);
|
||||
|
||||
if ($og_video) {
|
||||
|
||||
$source_stream = $og_video->getAttribute("content");
|
||||
|
||||
if ($source_stream) {
|
||||
|
||||
if ($og_image) {
|
||||
$poster_url = $og_image->getAttribute("content");
|
||||
} else {
|
||||
$poster_url = false;
|
||||
}
|
||||
|
||||
$this->handle_as_video($doc, $entry, $source_stream, $poster_url);
|
||||
$found = true;
|
||||
}
|
||||
|
||||
} else if ($og_image) {
|
||||
|
||||
$og_src = $og_image->getAttribute("content");
|
||||
|
||||
|
|
Loading…
Reference in New Issue