Detect the mimetype for external resources

This commit is contained in:
Michael 2021-06-30 03:47:53 +00:00
parent 19aef93560
commit d2b32a151e

View file

@ -28,8 +28,10 @@ use Friendica\DI;
use Friendica\Model\Contact; use Friendica\Model\Contact;
use Friendica\Model\Photo as MPhoto; use Friendica\Model\Photo as MPhoto;
use Friendica\Model\Post; use Friendica\Model\Post;
use Friendica\Model\Storage\ExternalResource;
use Friendica\Util\Proxy; use Friendica\Util\Proxy;
use Friendica\Object\Image; use Friendica\Object\Image;
use Friendica\Util\Images;
/** /**
* Photo Module * Photo Module
@ -99,6 +101,15 @@ class Photo extends BaseModule
$stamp = microtime(true); $stamp = microtime(true);
$imgdata = MPhoto::getImageDataForPhoto($photo); $imgdata = MPhoto::getImageDataForPhoto($photo);
// The mimetype for an external resources can only be known after it had been fetched
if ($photo['backend-class'] == ExternalResource::NAME) {
$mimetype = Images::getMimeTypeByData($imgdata);
if (!empty($mimetype)) {
$photo['type'] = $mimetype;
}
}
$data = microtime(true) - $stamp; $data = microtime(true) - $stamp;
if (empty($imgdata)) { if (empty($imgdata)) {