Merge "RevisionStoreDbTestBase, remove redundant needsDB override"
[lhc/web/wiklou.git] / includes / specials / SpecialSearch.php
index 78a54f5..d904ad1 100644 (file)
@@ -76,6 +76,11 @@ class SpecialSearch extends SpecialPage {
         */
        protected $fulltext;
 
+       /**
+        * @var string
+        */
+       protected $sort;
+
        /**
         * @var bool
         */
@@ -198,6 +203,11 @@ class SpecialSearch extends SpecialPage {
                        $this->setExtraParam( 'prefix', $this->mPrefix );
                }
 
+               $this->sort = $request->getVal( 'sort', SearchEngine::DEFAULT_SORT );
+               if ( $this->sort !== SearchEngine::DEFAULT_SORT ) {
+                       $this->setExtraParam( 'sort', $this->sort );
+               }
+
                $user = $this->getUser();
 
                # Extract manually requested namespaces
@@ -301,6 +311,7 @@ class SpecialSearch extends SpecialPage {
                $search->setFeatureData( 'rewrite', $this->runSuggestion );
                $search->setLimitOffset( $this->limit, $this->offset );
                $search->setNamespaces( $this->namespaces );
+               $search->setSort( $this->sort );
                $search->prefix = $this->mPrefix;
 
                Hooks::run( 'SpecialSearchSetupEngine', [ $this, $this->profile, $search ] );
@@ -557,9 +568,9 @@ class SpecialSearch extends SpecialPage {
                                'a',
                                [
                                        'href' => $this->getPageTitle()->getLocalURL( $params ),
-                                       'title' => $this->msg( 'search-filter-title-prefix-reset' ),
+                                       'title' => $this->msg( 'search-filter-title-prefix-reset' )->text(),
                                ],
-                               $this->msg( 'search-filter-title-prefix-reset' )
+                               $this->msg( 'search-filter-title-prefix-reset' )->text()
                        );
                        $subtitle .= ')';
                        $out->setSubtitle( $subtitle );
@@ -709,9 +720,10 @@ class SpecialSearch extends SpecialPage {
         */
        public function getSearchEngine() {
                if ( $this->searchEngine === null ) {
+                       $services = MediaWikiServices::getInstance();
                        $this->searchEngine = $this->searchEngineType ?
-                               MediaWikiServices::getInstance()->getSearchEngineFactory()->create( $this->searchEngineType ) :
-                               MediaWikiServices::getInstance()->newSearchEngine();
+                               $services->getSearchEngineFactory()->create( $this->searchEngineType ) :
+                               $services->newSearchEngine();
                }
 
                return $this->searchEngine;