mirror of
https://github.com/friendica/friendica
synced 2025-04-24 01:50:17 +00:00
Merge pull request #13226 from annando/lemmy
Better support for "audience" / simplified Lemmy processing
This commit is contained in:
commit
b731f8a0ad
25 changed files with 1123 additions and 802 deletions
|
@ -219,8 +219,7 @@ class Contact extends BaseModule
|
|||
DI::page()['aside'] .= $vcard_widget . $findpeople_widget . $follow_widget . $rel_widget . $circles_widget . $networks_widget . $account_widget;
|
||||
|
||||
$tpl = Renderer::getMarkupTemplate('contacts-head.tpl');
|
||||
DI::page()['htmlhead'] .= Renderer::replaceMacros($tpl, [
|
||||
]);
|
||||
DI::page()['htmlhead'] .= Renderer::replaceMacros($tpl, []);
|
||||
|
||||
$o = '';
|
||||
Nav::setSelected('contact');
|
||||
|
@ -412,20 +411,41 @@ class Contact extends BaseModule
|
|||
$tabs_html = Renderer::replaceMacros($tabs_tpl, ['$tabs' => $tabs]);
|
||||
|
||||
switch ($rel) {
|
||||
case 'followers': $header = DI::l10n()->t('Followers'); break;
|
||||
case 'following': $header = DI::l10n()->t('Following'); break;
|
||||
case 'mutuals': $header = DI::l10n()->t('Mutual friends'); break;
|
||||
case 'nothing': $header = DI::l10n()->t('No relationship'); break;
|
||||
default: $header = DI::l10n()->t('Contacts');
|
||||
case 'followers':
|
||||
$header = DI::l10n()->t('Followers');
|
||||
break;
|
||||
case 'following':
|
||||
$header = DI::l10n()->t('Following');
|
||||
break;
|
||||
case 'mutuals':
|
||||
$header = DI::l10n()->t('Mutual friends');
|
||||
break;
|
||||
case 'nothing':
|
||||
$header = DI::l10n()->t('No relationship');
|
||||
break;
|
||||
default:
|
||||
$header = DI::l10n()->t('Contacts');
|
||||
}
|
||||
|
||||
switch ($type) {
|
||||
case 'pending': $header .= ' - ' . DI::l10n()->t('Pending'); break;
|
||||
case 'blocked': $header .= ' - ' . DI::l10n()->t('Blocked'); break;
|
||||
case 'hidden': $header .= ' - ' . DI::l10n()->t('Hidden'); break;
|
||||
case 'ignored': $header .= ' - ' . DI::l10n()->t('Ignored'); break;
|
||||
case 'collapsed': $header .= ' - ' . DI::l10n()->t('Collapsed'); break;
|
||||
case 'archived': $header .= ' - ' . DI::l10n()->t('Archived'); break;
|
||||
case 'pending':
|
||||
$header .= ' - ' . DI::l10n()->t('Pending');
|
||||
break;
|
||||
case 'blocked':
|
||||
$header .= ' - ' . DI::l10n()->t('Blocked');
|
||||
break;
|
||||
case 'hidden':
|
||||
$header .= ' - ' . DI::l10n()->t('Hidden');
|
||||
break;
|
||||
case 'ignored':
|
||||
$header .= ' - ' . DI::l10n()->t('Ignored');
|
||||
break;
|
||||
case 'collapsed':
|
||||
$header .= ' - ' . DI::l10n()->t('Collapsed');
|
||||
break;
|
||||
case 'archived':
|
||||
$header .= ' - ' . DI::l10n()->t('Archived');
|
||||
break;
|
||||
}
|
||||
|
||||
$header .= $nets ? ' - ' . ContactSelector::networkToName($nets) : '';
|
||||
|
@ -512,7 +532,8 @@ class Contact extends BaseModule
|
|||
'id' => 'media-tab',
|
||||
'accesskey' => 'd',
|
||||
],
|
||||
['label' => DI::l10n()->t('Contacts'),
|
||||
[
|
||||
'label' => DI::l10n()->t('Contacts'),
|
||||
'url' => 'contact/' . $pcid . '/contacts',
|
||||
'sel' => (($active_tab == self::TAB_CONTACTS) ? 'active' : ''),
|
||||
'title' => DI::l10n()->t('View all known contacts'),
|
||||
|
@ -522,7 +543,8 @@ class Contact extends BaseModule
|
|||
];
|
||||
|
||||
if (!empty($contact['network']) && in_array($contact['network'], [Protocol::FEED, Protocol::MAIL]) && ($cid != $pcid)) {
|
||||
$tabs[] = ['label' => DI::l10n()->t('Advanced'),
|
||||
$tabs[] = [
|
||||
'label' => DI::l10n()->t('Advanced'),
|
||||
'url' => 'contact/' . $cid . '/advanced/',
|
||||
'sel' => (($active_tab == self::TAB_ADVANCED) ? 'active' : ''),
|
||||
'title' => DI::l10n()->t('Advanced Contact Settings'),
|
||||
|
|
|
@ -93,7 +93,7 @@ class Unfollow extends \Friendica\BaseModule
|
|||
Strings::normaliseLink($url), Strings::normaliseLink($url), $url,
|
||||
];
|
||||
|
||||
$contact = $this->database->selectFirst('contact', ['url', 'id', 'uid', 'network', 'addr', 'name'], $condition);
|
||||
$contact = $this->database->selectFirst('contact', ['url', 'alias', 'id', 'uid', 'network', 'addr', 'name'], $condition);
|
||||
if (!$this->database->isResult($contact)) {
|
||||
$this->systemMessages->addNotice($this->t("You aren't following this contact."));
|
||||
$this->baseUrl->redirect($base_return_path);
|
||||
|
|
|
@ -29,12 +29,14 @@ use Friendica\Core\Session\Capability\IHandleUserSessions;
|
|||
use Friendica\Core\System;
|
||||
use Friendica\Database\Database;
|
||||
use Friendica\Model\Contact;
|
||||
use Friendica\Model\GServer;
|
||||
use Friendica\Model\User;
|
||||
use Friendica\Network\HTTPClient\Capability\ICanSendHttpRequests;
|
||||
use Friendica\Network\HTTPClient\Client\HttpClientOptions;
|
||||
use Friendica\Util\HTTPSignature;
|
||||
use Friendica\Util\Profiler;
|
||||
use Friendica\Util\Strings;
|
||||
use GuzzleHttp\Psr7\Uri;
|
||||
use Psr\Log\LoggerInterface;
|
||||
|
||||
/**
|
||||
|
@ -83,6 +85,8 @@ class Magic extends BaseModule
|
|||
$this->logger->debug('bdest detected', ['dest' => $dest]);
|
||||
}
|
||||
|
||||
$target = $dest ?: $addr;
|
||||
|
||||
if ($addr ?: $dest) {
|
||||
$contact = Contact::getByURL($addr ?: $dest);
|
||||
}
|
||||
|
@ -110,14 +114,21 @@ class Magic extends BaseModule
|
|||
// OpenWebAuth
|
||||
$owner = User::getOwnerDataById($this->userSession->getLocalUserId());
|
||||
|
||||
$gserver = $this->dba->selectFirst('gserver', ['url'], ['id' => $contact['gsid']]);
|
||||
if (empty($gserver)) {
|
||||
$this->logger->notice('Server not found, redirecting to destination.', ['gsid' => $contact['gsid'], 'dest' => $dest]);
|
||||
if (!empty($contact['gsid'])) {
|
||||
$gserver = $this->dba->selectFirst('gserver', ['url'], ['id' => $contact['gsid']]);
|
||||
if (empty($gserver)) {
|
||||
$this->logger->notice('Server not found, redirecting to destination.', ['gsid' => $contact['gsid'], 'dest' => $dest]);
|
||||
System::externalRedirect($dest);
|
||||
}
|
||||
|
||||
$basepath = $gserver['url'];
|
||||
} elseif (GServer::check($target)) {
|
||||
$basepath = (string)GServer::cleanUri(new Uri($target));
|
||||
} else {
|
||||
$this->logger->notice('The target is not a server path, redirecting to destination.', ['target' => $target]);
|
||||
System::externalRedirect($dest);
|
||||
}
|
||||
|
||||
$basepath = $gserver['url'];
|
||||
|
||||
$header = [
|
||||
'Accept' => 'application/x-dfrn+json, application/x-zot+json',
|
||||
'X-Open-Web-Auth' => Strings::getRandomHex()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue