X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fsearch%2FSearchResultSet.php;h=8d18b0e6ed598841fd843838691bafb53ef25dba;hb=59ebff658ce912c1b0e7ef8d8f9bfec5a4e17b39;hp=698f93c287c6a01677980101c29e20f180348526;hpb=f0edb3e368a5fc69218d20f76f1538b68f37db42;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/search/SearchResultSet.php b/includes/search/SearchResultSet.php index 698f93c287..8d18b0e6ed 100644 --- a/includes/search/SearchResultSet.php +++ b/includes/search/SearchResultSet.php @@ -25,6 +25,12 @@ * @ingroup Search */ class SearchResultSet { + protected $containedSyntax = false; + + public function __construct( $containedSyntax = false ) { + $this->containedSyntax = $containedSyntax; + } + /** * Fetch an array of regular expression fragments for matching * the search terms as parsed by this engine in a text extract. @@ -54,6 +60,33 @@ class SearchResultSet { return null; } + /** + * Some search modes will run an alternative query that it thinks gives + * a better result than the provided search. Returns true if this has + * occured. + * + * @return bool + */ + function hasRewrittenQuery() { + return false; + } + + /** + * @return string|null The search the query was internally rewritten to, + * or null when the result of the original query was returned. + */ + function getQueryAfterRewrite() { + return null; + } + + /** + * @return string|null Same as self::getQueryAfterRewrite(), but in HTML + * and with changes highlighted. Null when the query was not rewritten. + */ + function getQueryAfterRewriteSnippet() { + return null; + } + /** * Some search modes return a suggested alternate term if there are * no exact hits. Returns true if there is one on this set. @@ -120,7 +153,7 @@ class SearchResultSet { * @return bool */ public function searchContainedSyntax() { - return false; + return $this->containedSyntax; } } @@ -161,7 +194,9 @@ class SqlSearchResultSet extends SearchResultSet { return false; } - return SearchResult::newFromRow( $row ); + return SearchResult::newFromTitle( + Title::makeTitle( $row->page_namespace, $row->page_title ) + ); } function free() {