Merge pull request #7661 from annando/contact-redir

Don't use the "url" parameter on redir if it points to the same contact
This commit is contained in:
Philipp 2019-09-25 02:51:25 +02:00 committed by GitHub
commit fe53533cf6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 4 deletions

View File

@ -148,7 +148,8 @@ function redir_magic($a, $cid, $url)
Logger::info('Got my url', ['visitor' => $visitor]); Logger::info('Got my url', ['visitor' => $visitor]);
} }
if (empty(visitor) && remote_user()) { /// @todo Most likely these lines are superfluous. We will remove them in the next version
if (empty($visitor) && remote_user()) {
$contact = DBA::selectFirst('contact', ['url'], ['id' => remote_user()]); $contact = DBA::selectFirst('contact', ['url'], ['id' => remote_user()]);
if (!empty($contact['url'])) { if (!empty($contact['url'])) {
$visitor = $contact['url']; $visitor = $contact['url'];
@ -156,7 +157,7 @@ function redir_magic($a, $cid, $url)
} }
} }
if (empty(visitor) && local_user()) { if (empty($visitor) && local_user()) {
$contact = DBA::selectFirst('contact', ['url'], ['id' => local_user()]); $contact = DBA::selectFirst('contact', ['url'], ['id' => local_user()]);
if (!empty($contact['url'])) { if (!empty($contact['url'])) {
$visitor = $contact['url']; $visitor = $contact['url'];

View File

@ -1193,7 +1193,7 @@ class Contact extends BaseObject
$sparkle = false; $sparkle = false;
if (($contact['network'] === Protocol::DFRN) && !$contact['self'] && empty($contact['pending'])) { if (($contact['network'] === Protocol::DFRN) && !$contact['self'] && empty($contact['pending'])) {
$sparkle = true; $sparkle = true;
$profile_link = System::baseUrl() . '/redir/' . $contact['id'] . '?url=' . $contact['url']; $profile_link = System::baseUrl() . '/redir/' . $contact['id'];
} else { } else {
$profile_link = $contact['url']; $profile_link = $contact['url'];
} }
@ -2744,7 +2744,7 @@ class Contact extends BaseObject
$redirect = 'redir/' . $contact['id']; $redirect = 'redir/' . $contact['id'];
if ($url != '') { if (($url != '') && !Strings::compareLink($contact['url'], $url)) {
$redirect .= '?url=' . $url; $redirect .= '?url=' . $url;
} }