Merge pull request #10455 from annando/signed-requests

Fix: Fetching of non public photos
This commit is contained in:
Hypolite Petovan 2021-07-01 18:13:44 -04:00 committed by GitHub
commit bb2ae2face
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 10 additions and 3 deletions

View file

@ -63,7 +63,6 @@ class Module
'outbox', 'outbox',
'poco', 'poco',
'post', 'post',
'proxy',
'pubsub', 'pubsub',
'pubsubhubbub', 'pubsubhubbub',
'receive', 'receive',

View file

@ -116,16 +116,17 @@ class Session
$session = DI::session(); $session = DI::session();
$session->set('remote', []); $session->set('remote', []);
$remote = [];
$remote_contacts = DBA::select('contact', ['id', 'uid'], ['nurl' => Strings::normaliseLink($session->get('my_url')), 'rel' => [Contact::FOLLOWER, Contact::FRIEND], 'self' => false]); $remote_contacts = DBA::select('contact', ['id', 'uid'], ['nurl' => Strings::normaliseLink($session->get('my_url')), 'rel' => [Contact::FOLLOWER, Contact::FRIEND], 'self' => false]);
while ($contact = DBA::fetch($remote_contacts)) { while ($contact = DBA::fetch($remote_contacts)) {
if (($contact['uid'] == 0) || Contact\User::isBlocked($contact['id'], $contact['uid'])) { if (($contact['uid'] == 0) || Contact\User::isBlocked($contact['id'], $contact['uid'])) {
continue; continue;
} }
$remote[$contact['uid']] = $contact['id'];
$session->set('remote', [$contact['uid'] => $contact['id']]);
} }
DBA::close($remote_contacts); DBA::close($remote_contacts);
$session->set('remote', $remote);
} }
/** /**

View file

@ -28,10 +28,12 @@ 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\Profile;
use Friendica\Model\Storage\ExternalResource; use Friendica\Model\Storage\ExternalResource;
use Friendica\Model\Storage\SystemResource; use Friendica\Model\Storage\SystemResource;
use Friendica\Util\Proxy; use Friendica\Util\Proxy;
use Friendica\Object\Image; use Friendica\Object\Image;
use Friendica\Util\HTTPSignature;
use Friendica\Util\Images; use Friendica\Util\Images;
/** /**
@ -65,6 +67,11 @@ class Photo extends BaseModule
exit; exit;
} }
$requester = HTTPSignature::getSigner('', $_SERVER);
if (!empty($requester)) {
Profile::addVisitorCookieForHandle($requester);
}
$customsize = 0; $customsize = 0;
$square_resize = true; $square_resize = true;
$photo = false; $photo = false;