Merge "Drop zh-tw message "saveprefs""
[lhc/web/wiklou.git] / includes / api / ApiQuerySearch.php
index 65fd727..b866f43 100644 (file)
@@ -82,6 +82,7 @@ class ApiQuerySearch extends ApiQueryGeneratorBase {
                        SearchEngine::create( $params['backend'] ) : SearchEngine::create();
                $search->setLimitOffset( $limit + 1, $params['offset'] );
                $search->setNamespaces( $params['namespace'] );
+               $search->setFeatureData( 'rewrite', (bool)$params['enablerewrites'] );
 
                $query = $search->transformSearchTerm( $query );
                $query = $search->replacePrefixes( $query );
@@ -134,6 +135,12 @@ class ApiQuerySearch extends ApiQueryGeneratorBase {
                                $apiResult->addValue( array( 'query', 'searchinfo' ),
                                        'suggestionsnippet', $matches->getSuggestionSnippet() );
                        }
+                       if ( isset( $searchInfo['rewrittenquery'] ) && $matches->hasRewrittenQuery() ) {
+                               $apiResult->addValue( array( 'query', 'searchinfo' ),
+                                       'rewrittenquery', $matches->getQueryAfterRewrite() );
+                               $apiResult->addValue( array( 'query', 'searchinfo' ),
+                                       'rewrittenquerysnippet', $matches->getQueryAfterRewriteSnippet() );
+                       }
                }
 
                // Add the search results to the result
@@ -303,10 +310,11 @@ class ApiQuerySearch extends ApiQueryGeneratorBase {
                                )
                        ),
                        'info' => array(
-                               ApiBase::PARAM_DFLT => 'totalhits|suggestion',
+                               ApiBase::PARAM_DFLT => 'totalhits|suggestion|rewrittenquery',
                                ApiBase::PARAM_TYPE => array(
                                        'totalhits',
                                        'suggestion',
+                                       'rewrittenquery',
                                ),
                                ApiBase::PARAM_ISMULTI => true,
                        ),
@@ -342,6 +350,7 @@ class ApiQuerySearch extends ApiQueryGeneratorBase {
                                ApiBase::PARAM_MAX2 => ApiBase::LIMIT_SML2
                        ),
                        'interwiki' => false,
+                       'enablerewrites' => false,
                );
 
                $alternatives = SearchEngine::getSearchTypes();