+ if (Network::isLocalLink($url) && ($data = Photo::getResourceData($url))) {
+ $photo = Photo::selectFirst([], ['resource-id' => $data['guid'], 'scale' => $data['scale']]);
+ if (!empty($photo)) {
+ $img_str = Photo::getImageDataForPhoto($photo);
+ }
+ // @todo Possibly add a check for locally stored files
+ }
+
+ if (empty($img_str)) {
+ try {
+ $img_str = DI::httpClient()->fetch($url, HttpClientAccept::IMAGE, 4);
+ } catch (\Exception $exception) {
+ Logger::notice('Image is invalid', ['url' => $url, 'exception' => $exception]);
+ return [];
+ }
+ }