X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fspecials%2FSpecialSearch.php;h=f27a73631b275103732633dfc23faae93dc0810a;hb=09ee5d2505f99cc146f871307be7ac00b7368d76;hp=e6d06329ad741965a5b3222054cff18816387048;hpb=27a74895d8ffce6a1c15df3ed1f234b9fd10a048;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/specials/SpecialSearch.php b/includes/specials/SpecialSearch.php index e6d06329ad..f27a73631b 100644 --- a/includes/specials/SpecialSearch.php +++ b/includes/specials/SpecialSearch.php @@ -102,7 +102,7 @@ class SpecialSearch extends SpecialPage { /** * Entry point * - * @param string $par + * @param string|null $par */ public function execute( $par ) { $request = $this->getRequest(); @@ -115,7 +115,7 @@ class SpecialSearch extends SpecialPage { // parameter, but also as part of the primary url. This can have PII implications // in releasing page view data. As such issue a 301 redirect to the correct // URL. - if ( strlen( $par ) && !strlen( $term ) ) { + if ( $par !== null && $par !== '' && $term === '' ) { $query = $request->getValues(); unset( $query['title'] ); // Strip underscores from title parameter; most of the time we'll want @@ -129,7 +129,7 @@ class SpecialSearch extends SpecialPage { $this->load(); // TODO: This performs database actions on GET request, which is going to // be a problem for our multi-datacenter work. - if ( !is_null( $request->getVal( 'nsRemember' ) ) ) { + if ( $request->getCheck( 'nsRemember' ) ) { $this->saveNamespaces(); // Remove the token from the URL to prevent the user from inadvertently // exposing it (e.g. by pasting it into a public wiki page) or undoing @@ -141,10 +141,7 @@ class SpecialSearch extends SpecialPage { } $this->searchEngineType = $request->getVal( 'srbackend' ); - if ( - !$request->getVal( 'fulltext' ) && - $request->getVal( 'offset' ) === null - ) { + if ( !$request->getVal( 'fulltext' ) && !$request->getCheck( 'offset' ) ) { $url = $this->goResult( $term ); if ( $url !== null ) { // successful 'go' @@ -246,14 +243,12 @@ class SpecialSearch extends SpecialPage { $this->namespaces = $nslist; } elseif ( $profile === 'advanced' ) { $this->namespaces = $nslist; + } elseif ( isset( $profiles[$profile]['namespaces'] ) ) { + $this->namespaces = $profiles[$profile]['namespaces']; } else { - if ( isset( $profiles[$profile]['namespaces'] ) ) { - $this->namespaces = $profiles[$profile]['namespaces']; - } else { - // Unknown profile requested - $profile = 'default'; - $this->namespaces = $profiles['default']['namespaces']; - } + // Unknown profile requested + $profile = 'default'; + $this->namespaces = $profiles['default']['namespaces']; } $this->fulltext = $request->getVal( 'fulltext' ); @@ -474,8 +469,7 @@ class SpecialSearch extends SpecialPage { $offset = $this->offset; } - $prevnext = $this->getLanguage()->viewPrevNext( - $this->getPageTitle(), + $prevnext = $this->buildPrevNextNavigation( $offset, $this->limit, $this->powerSearchOptions() + [ 'search' => $term ],