X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModule%2FHoverCard.php;h=ae107ca17229e3bfdef7fea1263f96a53d60be47;hb=3f523a88b0af4e2a73b29917da33d221abef9647;hp=0ca74c514e1f0b4ad5c52447eca8e9389b22bf77;hpb=eeb78d2d29eb8627e87e1bc9c90a892e4cfa8fdf;p=friendica.git diff --git a/src/Module/HoverCard.php b/src/Module/HoverCard.php index 0ca74c514e..ae107ca172 100644 --- a/src/Module/HoverCard.php +++ b/src/Module/HoverCard.php @@ -1,17 +1,32 @@ . + * + */ namespace Friendica\Module; -use Friendica\App\Arguments; -use Friendica\App\BaseURL; -use Friendica\App\Page; use Friendica\BaseModule; -use Friendica\Core\Config\Configuration; -use Friendica\Core\L10n\L10n; use Friendica\Core\Session; +use Friendica\DI; use Friendica\Model\Profile; use Friendica\Model\User; -use Friendica\Network\HTTPException\NotFoundException; +use Friendica\Network\HTTPException; /** * Loads a profile for the HoverCard view @@ -20,31 +35,25 @@ class HoverCard extends BaseModule { public static function rawContent(array $parameters = []) { - /** @var Arguments $args */ - $args = self::getClass(Arguments::class); + $a = DI::app(); - $a = self::getApp(); - - // A logged in user views a profile of a user - if ((local_user()) && $args->get(2) === 'view') { + if ((local_user()) && ($parameters['action'] ?? '') === 'view') { + // A logged in user views a profile of a user $nickname = $a->user['nickname']; - $profile = $parameters['profile']; - + } elseif (empty($parameters['action'])) { // Show the profile hovercard - } elseif ($args->getArgc() < 2) { $nickname = $parameters['profile']; - $profile = 0; - } else { - /** @var L10n $l10n */ - $l10n = self::getClass(L10n::class); - throw new NotFoundException($l10n->t('No profile')); + throw new HTTPException\NotFoundException(DI::l10n()->t('No profile')); } - Profile::load($a, $nickname, $profile); + Profile::load($a, $nickname); + + if (empty($a->profile)) { + throw new HTTPException\NotFoundException(DI::l10n()->t('User not found.')); + } - /** @var Page $page */ - $page = self::getClass(Page::class); + $page = DI::page(); if (!empty($a->profile['page-flags']) && ($a->profile['page-flags'] == User::PAGE_FLAGS_COMMUNITY)) { $page['htmlhead'] .= ''; @@ -57,10 +66,8 @@ class HoverCard extends BaseModule $page['htmlhead'] .= '' . "\r\n"; } - /** @var Configuration $config */ - $config = self::getClass(Configuration::class); // check if blocked - if ($config->get('system', 'block_public') && !Session::isAuthenticated()) { + if (DI::config()->get('system', 'block_public') && !Session::isAuthenticated()) { $keywords = $a->profile['pub_keywords'] ?? ''; $keywords = str_replace([',', ' ', ',,'], [' ', ',', ','], $keywords); if (strlen($keywords)) { @@ -68,12 +75,11 @@ class HoverCard extends BaseModule } } - /** @var BaseURL $baseUrl */ - $baseUrl = self::getClass(BaseURL::class); + $baseUrl = DI::baseUrl(); $uri = urlencode('acct:' . $a->profile['nickname'] . '@' . $baseUrl->getHostname() . ($baseUrl->getUrlPath() ? '/' . $baseUrl->getUrlPath() : '')); - $page['htmlhead'] .= '' . "\r\n"; + $page['htmlhead'] .= '' . "\r\n"; $page['htmlhead'] .= '' . "\r\n"; $page['htmlhead'] .= '' . "\r\n"; header('Link: <' . $baseUrl->get() . '/xrd/?uri=' . $uri . '>; rel="lrdd"; type="application/xrd+xml"', false);