X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModule%2FPhoto.php;h=3d3110fd8b702fa2458c6c1a2ff61fc775b68637;hb=1ae7cac23667a7e43a0ca5e66ad6fd58011542d0;hp=e1eae44bd78b0b8a8396e2929ae49418ada26364;hpb=5aad46c7fb2b66d63ad93d92ee355fc522b57be1;p=friendica.git diff --git a/src/Module/Photo.php b/src/Module/Photo.php index e1eae44bd7..3d3110fd8b 100644 --- a/src/Module/Photo.php +++ b/src/Module/Photo.php @@ -1,6 +1,6 @@ $contact['nurl'], 'self' => true]); + if (!empty($contact)) { + if ($customsize <= Proxy::PIXEL_MICRO) { + $scale = 6; + } elseif ($customsize <= Proxy::PIXEL_THUMB) { + $scale = 5; + } else { + $scale = 4; + } + $photo = MPhoto::selectFirst([], ["scale" => $scale, "uid" => $contact['uid'], "profile" => 1]); + if (!empty($photo)) { + return $photo; + } + } + } + + if (!empty($contact['uid']) && empty($contact['photo']) && empty($contact['avatar'])) { $contact = Contact::getByURL($contact['url'], false, ['avatar', 'photo', 'xmpp', 'addr']); } + if (!empty($contact['photo']) && !empty($contact['avatar'])) { // Fetch photo directly $resourceid = MPhoto::ridFromURI($contact['photo']); @@ -310,19 +330,26 @@ class Photo extends BaseModule } return MPhoto::createPhotoForExternalResource($url, 0, $mimetext); case "header": - $contact = Contact::getById($id, ['uid', 'url', 'header']); + $fields = ['uid', 'url', 'header', 'network', 'gsid']; + $contact = Contact::getById($id, $fields); if (empty($contact)) { return false; } If (($contact['uid'] != 0) && empty($contact['header'])) { - $contact = Contact::getByURL($contact['url'], false, ['header']); + $contact = Contact::getByURL($contact['url'], false, $fields); } if (!empty($contact['header'])) { $url = $contact['header']; } else { - $url = DI::baseUrl() . '/images/blank.png'; + $url = Contact::getDefaultHeader($contact); } return MPhoto::createPhotoForExternalResource($url); + case "banner": + $photo = MPhoto::selectFirst([], ["scale" => 3, 'uid' => $id, 'photo-type' => MPhoto::USER_BANNER]); + if (!empty($photo)) { + return $photo; + } + return MPhoto::createPhotoForExternalResource(DI::baseUrl() . '/images/friendica-banner.jpg'); case "profile": case "custom": $scale = 4;