]> git.mxchange.org Git - friendica.git/blobdiff - src/Module/BaseSearchModule.php
Remove deprecated App::getHostName() - process methods to DI::baseUrl()->getHostName()
[friendica.git] / src / Module / BaseSearchModule.php
index 3393b34123923fe05669a5004ca51093ae85f2b0..efedca92af3cc543b88ed5f82192d6af1742d193 100644 (file)
@@ -2,12 +2,14 @@
 
 namespace Friendica\Module;
 
+use Friendica\App\Arguments;
 use Friendica\BaseModule;
 use Friendica\Content\ContactSelector;
 use Friendica\Content\Pager;
 use Friendica\Core\L10n;
 use Friendica\Core\Renderer;
 use Friendica\Core\Search;
+use Friendica\DI;
 use Friendica\Model;
 use Friendica\Network\HTTPException;
 use Friendica\Object\Search\ContactResult;
@@ -21,24 +23,25 @@ use Friendica\Util\Strings;
 class BaseSearchModule extends BaseModule
 {
        /**
-        * Performs a search with an optional prefix
+        * Performs a contact search with an optional prefix
         *
+        * @param string $search Search query
         * @param string $prefix A optional prefix (e.g. @ or !) for searching
         *
         * @return string
         * @throws HTTPException\InternalServerErrorException
         * @throws \ImagickException
         */
-       public static function performSearch($prefix = '')
+       public static function performContactSearch($search, $prefix = '')
        {
-               $a      = self::getApp();
-               $config = $a->getConfig();
+               $a      = DI::app();
+               $config = DI::config();
 
                $type = Search::TYPE_ALL;
 
                $localSearch = $config->get('system', 'poco_local_search');
 
-               $search = $prefix . Strings::escapeTags(trim(defaults($_REQUEST, 'search', '')));
+               $search = $prefix . $search;
 
                if (!$search) {
                        return '';
@@ -50,7 +53,10 @@ class BaseSearchModule extends BaseModule
                        $search  = substr($search, 1);
                        $type    = Search::TYPE_PEOPLE;
                        $header  = L10n::t('People Search - %s', $search);
-                       $results = Search::getContactsFromProbe($search);
+
+                       if (strrpos($search, '@') > 0) {
+                               $results = Search::getContactsFromProbe($search);
+                       }
                }
 
                if (strpos($search, '!') === 0) {
@@ -59,7 +65,8 @@ class BaseSearchModule extends BaseModule
                        $header = L10n::t('Forum Search - %s', $search);
                }
 
-               $pager = new Pager($a->query_string);
+               $args = DI::args();
+               $pager = new Pager($args->getQueryString());
 
                if ($localSearch && empty($results)) {
                        $pager->setItemsPerPage(80);
@@ -90,7 +97,7 @@ class BaseSearchModule extends BaseModule
                        return '';
                }
 
-               $a = self::getApp();
+               $a = DI::app();
 
                $id      = 0;
                $entries = [];