X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModule%2FPhoto.php;h=a92568015ca72042361bb64425f90ba330feb578;hb=6dbbd081795fa1c8fe57db2248ac162efeeada88;hp=0b03f4a7995965bbfaa5bbc36988357973b6c24c;hpb=7fd202dbc93f9e0914067337cf3ea4163f066399;p=friendica.git diff --git a/src/Module/Photo.php b/src/Module/Photo.php index 0b03f4a799..a92568015c 100644 --- a/src/Module/Photo.php +++ b/src/Module/Photo.php @@ -1,6 +1,6 @@ parameters['type'])) { + if (!empty($this->parameters['customsize'])) { + $customsize = intval($this->parameters['customsize']); + $square_resize = !in_array($this->parameters['type'], ['media', 'preview']); } - if (!empty($parameters['guid'])) { - $guid = $parameters['guid']; + if (!empty($this->parameters['guid'])) { + $guid = $this->parameters['guid']; $account = DBA::selectFirst('account-user-view', ['id'], ['guid' => $guid], ['order' => ['uid' => true]]); if (empty($account)) { throw new HTTPException\NotFoundException(); @@ -94,12 +94,12 @@ class Photo extends BaseModule } // Contact Id Fallback, to remove after version 2021.12 - if (isset($parameters['contact_id'])) { - $id = intval($parameters['contact_id']); + if (isset($this->parameters['contact_id'])) { + $id = intval($this->parameters['contact_id']); } - if (!empty($parameters['nickname_ext'])) { - $nickname = pathinfo($parameters['nickname_ext'], PATHINFO_FILENAME); + if (!empty($this->parameters['nickname_ext'])) { + $nickname = pathinfo($this->parameters['nickname_ext'], PATHINFO_FILENAME); $user = User::getByNickname($nickname, ['uid']); if (empty($user)) { throw new HTTPException\NotFoundException(); @@ -109,23 +109,23 @@ class Photo extends BaseModule } // User Id Fallback, to remove after version 2021.12 - if (!empty($parameters['uid_ext'])) { - $id = intval(pathinfo($parameters['uid_ext'], PATHINFO_FILENAME)); + if (!empty($this->parameters['uid_ext'])) { + $id = intval(pathinfo($this->parameters['uid_ext'], PATHINFO_FILENAME)); } // Please refactor this for the love of everything that's good - if (isset($parameters['id'])) { - $id = $parameters['id']; + if (isset($this->parameters['id'])) { + $id = $this->parameters['id']; } if (empty($id)) { - Logger::notice('No picture id was detected', ['parameters' => $parameters, 'query' => DI::args()->getQueryString()]); + Logger::notice('No picture id was detected', ['parameters' => $this->parameters, 'query' => DI::args()->getQueryString()]); throw new HTTPException\NotFoundException(DI::l10n()->t('The Photo is not available.')); } - $photo = self::getPhotoByid($id, $parameters['type'], $customsize ?: Proxy::PIXEL_SMALL); + $photo = self::getPhotoByid($id, $this->parameters['type'], $customsize ?: Proxy::PIXEL_SMALL); } else { - $photoid = pathinfo($parameters['name'], PATHINFO_FILENAME); + $photoid = pathinfo($this->parameters['name'], PATHINFO_FILENAME); $scale = 0; if (substr($photoid, -2, 1) == "-") { $scale = intval(substr($photoid, -1, 1)); @@ -289,13 +289,17 @@ class Photo extends BaseModule $mimetext = ''; if (!empty($url)) { $mime = ParseUrl::getContentType($url); - if (empty($mime) || ($mime[0] != 'image')) { - $url = ''; - } else { + if (!empty($mime)) { $mimetext = $mime[0] . '/' . $mime[1]; + } else { + Logger::info('Invalid file', ['url' => $url]); + } + if (!empty($mimetext) && ($mime[0] != 'image') && ($mimetext != 'application/octet-stream')) { + Logger::info('Unexpected Content-Type', ['mime' => $mimetext, 'url' => $url]); + $mimetext = ''; } } - if (empty($url)) { + if (empty($mimetext)) { if ($customsize <= Proxy::PIXEL_MICRO) { $url = Contact::getDefaultAvatar($contact, Proxy::SIZE_MICRO); } elseif ($customsize <= Proxy::PIXEL_THUMB) {