use Friendica\DI;
use Friendica\Model\Photo;
use Friendica\Network\HTTPClient\Client\HttpClientAccept;
+use Friendica\Object\Image;
/**
* Image utilities
*/
public static function getMimeTypeBySource(string $sourcefile, string $filename = '', string $default = ''): string
{
- if (substr($mime, 0, 6) == 'image/') {
- Logger::info('Using default mime type', ['filename' => $filename, 'mime' => $mime]);
- return $mime;
+ if (substr($default, 0, 6) == 'image/') {
+ Logger::info('Using default mime type', ['filename' => $filename, 'mime' => $default]);
+ return $default;
}
$image = @getimagesize($sourcefile);
if (!empty($image['mime'])) {
- Logger::info('Mime type detected via file', ['filename' => $filename, 'default' => $mime, 'image' => $image]);
+ Logger::info('Mime type detected via file', ['filename' => $filename, 'default' => $default, 'image' => $image]);
return $image['mime'];
}
/**
* Gets info array from given URL, cached data has priority
*
- * @param string $url URL
+ * @param string $url
* @return array Info
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
DI::cache()->set($cacheKey, $data);
}
- return $data;
+ return $data ?? [];
}
/**
* Gets info from URL uncached
- * @param string $url URL
+ *
+ * @param string $url
* @return array Info array
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
}
if ($data) {
+ $image = new Image($img_str);
+
+ if ($image->isValid()) {
+ $data['blurhash'] = $image->getBlurHash();
+ }
+
$data['size'] = $filesize;
}
- return $data;
+ return is_array($data) ? $data : [];
}
/**