1
0
Fork 0

Issue 8514: Make paging for searcg items work again

Fixes #8514
This commit is contained in:
Michael 2020-05-17 13:51:56 +00:00
commit a3c4021f12
8 changed files with 26 additions and 6 deletions

View file

@ -26,6 +26,7 @@ use DOMXPath;
use Friendica\Content\Widget\ContactBlock;
use Friendica\Core\Hook;
use Friendica\Core\Renderer;
use Friendica\Core\Search;
use Friendica\DI;
use Friendica\Model\Contact;
use Friendica\Util\Network;
@ -917,7 +918,7 @@ class HTML
'$save_label' => $save_label,
'$search_hint' => DI::l10n()->t('@name, !forum, #tags, content'),
'$mode' => $mode,
'$return_url' => urlencode('search?q=' . urlencode($s)),
'$return_url' => urlencode(Search::getSearchPath($s)),
];
if (!$aside) {

View file

@ -22,6 +22,7 @@
namespace Friendica\Content\Widget;
use Friendica\Core\Renderer;
use Friendica\Core\Search;
use Friendica\Database\DBA;
use Friendica\DI;
@ -45,6 +46,7 @@ class SavedSearches
'id' => $saved_search['id'],
'term' => $saved_search['term'],
'encodedterm' => urlencode($saved_search['term']),
'searchpath' => Search::getSearchPath($saved_search['term']),
'delete' => DI::l10n()->t('Remove term'),
'selected' => $search == $saved_search['term'],
];

View file

@ -311,4 +311,19 @@ class Search
{
return DI::config()->get('system', 'directory', self::DEFAULT_DIRECTORY);
}
/**
* Return the search path (either fulltext search or tag search)
*
* @param string $search
* @return string search path
*/
public static function getSearchPath(string $search)
{
if (substr($search, 0, 1) == '#') {
return 'search?tag=' . urlencode(substr($search, 1));
} else {
return 'search?q=' . urlencode($search);
}
}
}

View file

@ -28,6 +28,7 @@ use Friendica\Content\Widget;
use Friendica\Core\Cache\Duration;
use Friendica\Core\Logger;
use Friendica\Core\Renderer;
use Friendica\Core\Search;
use Friendica\Core\Session;
use Friendica\Database\DBA;
use Friendica\DI;
@ -80,7 +81,7 @@ class Index extends BaseSearch
}
if (local_user()) {
DI::page()['aside'] .= Widget\SavedSearches::getHTML('search?q=' . urlencode($search), $search);
DI::page()['aside'] .= Widget\SavedSearches::getHTML(Search::getSearchPath($search), $search);
}
Nav::setSelected('search');

View file

@ -22,6 +22,7 @@
namespace Friendica\Module\Search;
use Friendica\BaseModule;
use Friendica\Core\Search;
use Friendica\Database\DBA;
use Friendica\DI;
use Friendica\Util\Strings;
@ -33,7 +34,7 @@ class Saved extends BaseModule
$action = DI::args()->get(2, 'none');
$search = Strings::escapeTags(trim(rawurldecode($_GET['term'] ?? '')));
$return_url = $_GET['return_url'] ?? 'search?q=' . urlencode($search);
$return_url = $_GET['return_url'] ?? Search::getSearchPath($search);
if (local_user() && $search) {
switch ($action) {