]> git.mxchange.org Git - friendica.git/blobdiff - src/Module/Directory.php
parameters now are having a default value and are optional
[friendica.git] / src / Module / Directory.php
index b47bfd43e98a19d8576bb5d6910ecbaba864b1bd..f24c0665074d4f4f942c9aad427edd76e0ad45a9 100644 (file)
@@ -8,9 +8,11 @@ use Friendica\Content\Pager;
 use Friendica\Content\Widget;
 use Friendica\Core\Hook;
 use Friendica\Core\L10n;
+use Friendica\Core\Session;
 use Friendica\Core\Renderer;
 use Friendica\Model\Contact;
 use Friendica\Model\Profile;
+use Friendica\Network\HTTPException;
 use Friendica\Util\Proxy as ProxyUtils;
 use Friendica\Util\Strings;
 
@@ -19,35 +21,19 @@ use Friendica\Util\Strings;
  */
 class Directory extends BaseModule
 {
-       public static function init()
+       public static function content(array $parameters = [])
        {
                $app = self::getApp();
+               $config = $app->getConfig();
+
+               if (($config->get('system', 'block_public') && !Session::isAuthenticated()) ||
+                       ($config->get('system', 'block_local_dir') && !Session::isAuthenticated())) {
+                       throw new HTTPException\ForbiddenException(L10n::t('Public access denied.'));
+               }
 
                if (local_user()) {
                        $app->page['aside'] .= Widget::findPeople();
                        $app->page['aside'] .= Widget::follow();
-               } else {
-                       unset($_SESSION['theme']);
-                       unset($_SESSION['mobile-theme']);
-               }
-       }
-
-       public static function post()
-       {
-               if (!empty($_POST['search'])) {
-                       self::getApp()->data['search'] = $_POST['search'];
-               }
-       }
-
-       public static function content()
-       {
-               $app = self::getApp();
-               $config = $app->getConfig();
-
-               if (($config->get('system', 'block_public') && !local_user() && !remote_user()) ||
-                       ($config->get('system', 'block_local_dir') && !local_user() && !remote_user())) {
-                       notice(L10n::t('Public access denied.') . EOL);
-                       return '';
                }
 
                $output = '';
@@ -55,11 +41,9 @@ class Directory extends BaseModule
 
                Nav::setSelected('directory');
 
-               if (!empty($app->data['search'])) {
-                       $search = Strings::escapeTags(trim($app->data['search']));
-               } else {
-                       $search = (!empty($_GET['search']) ? Strings::escapeTags(trim(rawurldecode($_GET['search']))) : '');
-               }
+               $search = (!empty($_REQUEST['search']) ?
+                       Strings::escapeTags(trim(rawurldecode($_REQUEST['search']))) :
+                       '');
 
                $gDirPath = '';
                $dirURL = $config->get('system', 'directory');
@@ -88,17 +72,17 @@ class Directory extends BaseModule
                $tpl = Renderer::getMarkupTemplate('directory_header.tpl');
 
                $output .= Renderer::replaceMacros($tpl, [
-                       '$search'    => $search,
-                       '$globaldir' => L10n::t('Global Directory'),
-                       '$gDirPath'  => $gDirPath,
-                       '$desc'      => L10n::t('Find on this site'),
-                       '$contacts'  => $profiles['entries'],
-                       '$finding'   => L10n::t('Results for:'),
-                       '$findterm'  => (strlen($search) ? $search : ""),
-                       '$title'     => L10n::t('Site Directory'),
+                       '$search'     => $search,
+                       '$globaldir'  => L10n::t('Global Directory'),
+                       '$gDirPath'   => $gDirPath,
+                       '$desc'       => L10n::t('Find on this site'),
+                       '$contacts'   => $entries,
+                       '$finding'    => L10n::t('Results for:'),
+                       '$findterm'   => (strlen($search) ? $search : ""),
+                       '$title'      => L10n::t('Site Directory'),
                        '$search_mod' => 'directory',
-                       '$submit'    => L10n::t('Find'),
-                       '$paginate'  => $pager->renderFull($profiles['total']),
+                       '$submit'     => L10n::t('Find'),
+                       '$paginate'   => $pager->renderFull($profiles['total']),
                ]);
 
                return $output;
@@ -153,10 +137,10 @@ class Directory extends BaseModule
                        $location = '';
                }
 
-               $gender   = (!empty($profile['gender'])   ? L10n::t('Gender:')   : false);
-               $marital  = (!empty($profile['marital'])  ? L10n::t('Status:')   : false);
+               $gender =   (!empty($profile['gender'])   ? L10n::t('Gender:')   : false);
+               $marital  (!empty($profile['marital'])  ? L10n::t('Status:')   : false);
                $homepage = (!empty($profile['homepage']) ? L10n::t('Homepage:') : false);
-               $about    = (!empty($profile['about'])    ? L10n::t('About:')    : false);
+               $about =    (!empty($profile['about'])    ? L10n::t('About:')    : false);
 
                $location_e = $location;
 
@@ -166,7 +150,7 @@ class Directory extends BaseModule
 
                $entry = [
                        'id'           => $contact['id'],
-                       'url'          => Contact::magicLInk($profile_link),
+                       'url'          => Contact::magicLink($profile_link),
                        'itemurl'      => $itemurl,
                        'thumb'        => ProxyUtils::proxifyUrl($contact[$photo_size], false, ProxyUtils::SIZE_THUMB),
                        'img_hover'    => $contact['name'],