X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModule%2FDirectory.php;h=deb090e4872bbbe551182bf27297aa009b958141;hb=649bbaa4c3d28cdf4cb8544ff2f92ba493023953;hp=ed1b70252313cbf8a1d80ce0fde510aad6df4e17;hpb=23c64b9a119c5df9f985ad4c62ef6fb79d68bee3;p=friendica.git diff --git a/src/Module/Directory.php b/src/Module/Directory.php index ed1b702523..deb090e487 100644 --- a/src/Module/Directory.php +++ b/src/Module/Directory.php @@ -1,6 +1,6 @@ get('system', 'block_public') && !Session::isAuthenticated()) || - ($config->get('system', 'block_local_dir') && !Session::isAuthenticated())) { + if (($config->get('system', 'block_public') && !DI::userSession()->isAuthenticated()) || + ($config->get('system', 'block_local_dir') && !DI::userSession()->isAuthenticated())) { throw new HTTPException\ForbiddenException(DI::l10n()->t('Public access denied.')); } - if (local_user()) { + if (DI::userSession()->getLocalUserId()) { DI::page()['aside'] .= Widget::findPeople(); DI::page()['aside'] .= Widget::follow(); } @@ -60,31 +58,26 @@ class Directory extends BaseModule Nav::setSelected('directory'); - $search = (!empty($_REQUEST['search']) ? - Strings::escapeTags(trim(rawurldecode($_REQUEST['search']))) : - ''); + $search = trim(rawurldecode($_REQUEST['search'] ?? '')); $gDirPath = ''; - $dirURL = $config->get('system', 'directory'); + $dirURL = Search::getGlobalDirectory(); if (strlen($dirURL)) { $gDirPath = Profile::zrl($dirURL, true); } - $pager = new Pager(DI::args()->getQueryString(), 60); + $pager = new Pager(DI::l10n(), DI::args()->getQueryString(), 60); $profiles = Profile::searchProfiles($pager->getStart(), $pager->getItemsPerPage(), $search); if ($profiles['total'] === 0) { - info(DI::l10n()->t('No entries (some entries may be hidden).') . EOL); + DI::sysmsg()->addNotice(DI::l10n()->t('No entries (some entries may be hidden).')); } else { - if (in_array('small', $app->argv)) { - $photo = 'thumb'; - } else { - $photo = 'photo'; - } - foreach ($profiles['entries'] as $entry) { - $entries[] = self::formatEntry($entry, $photo); + $contact = Model\Contact::getByURLForUser($entry['url'], DI::userSession()->getLocalUserId()); + if (!empty($contact)) { + $entries[] = Contact::getContactTemplateVars($contact); + } } } @@ -118,13 +111,13 @@ class Directory extends BaseModule * * @throws \Exception */ - public static function formatEntry(array $contact, $photo_size = 'photo') + public static function formatEntry(array $contact, string $photo_size = 'photo'): array { - $itemurl = (($contact['addr'] != "") ? $contact['addr'] : $contact['profile_url']); + $itemurl = (($contact['addr'] != "") ? $contact['addr'] : $contact['url']); - $profile_link = $contact['profile_url']; + $profile_link = $contact['url']; - $pdesc = (($contact['pdesc']) ? $contact['pdesc'] . '
' : ''); + $about = (($contact['about']) ? $contact['about'] . '
' : ''); $details = ''; if (strlen($contact['locality'])) { @@ -161,22 +154,22 @@ class Directory extends BaseModule $location_e = $location; $photo_menu = [ - 'profile' => [DI::l10n()->t("View Profile"), Contact::magicLink($profile_link)] + 'profile' => [DI::l10n()->t("View Profile"), Model\Contact::magicLink($profile_link)] ]; $entry = [ 'id' => $contact['id'], - 'url' => Contact::magicLink($profile_link), + 'url' => Model\Contact::magicLink($profile_link), 'itemurl' => $itemurl, - 'thumb' => ProxyUtils::proxifyUrl($contact[$photo_size], false, ProxyUtils::SIZE_THUMB), + 'thumb' => Model\Contact::getThumb($contact), 'img_hover' => $contact['name'], 'name' => $contact['name'], 'details' => $details, - 'account_type' => Contact::getAccountType($contact), + 'account_type' => Model\Contact::getAccountType($contact['contact-type'] ?? 0), 'profile' => $profile, 'location' => $location_e, 'tags' => $contact['pub_keywords'], - 'pdesc' => $pdesc, + 'about' => $about, 'homepage' => $homepage, 'photo_menu' => $photo_menu,