MediaWiki REL1_37
|
Handles searching prefixes of titles and finding any page names that match. More...
Public Member Functions | |
defaultSearchBackend ( $namespaces, $search, $limit, $offset) | |
Unless overridden by PrefixSearchBackend hook... This is case-sensitive (First character may be automatically capitalized by Title::secureAndSpit() later on depending on $wgCapitalLinks) | |
search ( $search, $limit, $namespaces=[], $offset=0) | |
Do a prefix search of titles and return a list of matching page names. | |
searchWithVariants ( $search, $limit, array $namespaces, $offset=0) | |
Do a prefix search for all possible variants of the prefix. | |
Protected Member Functions | |
searchBackend ( $namespaces, $search, $limit, $offset) | |
Do a prefix search of titles and return a list of matching page names. | |
specialSearch ( $search, $limit, $offset) | |
Prefix search special-case for Special: namespace. | |
strings (array $strings) | |
When implemented in a descendant class, receives an array of titles as strings and returns either an unmodified array or an array of Title objects corresponding to strings received. | |
titles (array $titles) | |
When implemented in a descendant class, receives an array of Title objects and returns either an unmodified array or an array of strings corresponding to titles passed to it. | |
validateNamespaces ( $namespaces) | |
Validate an array of numerical namespace indexes. | |
Private Member Functions | |
handleResultFromHook ( $srchres, $namespaces, $search, $limit, $offset) | |
Handles searching prefixes of titles and finding any page names that match.
Used largely by the OpenSearch implementation.
Definition at line 33 of file PrefixSearch.php.
PrefixSearch::defaultSearchBackend | ( | $namespaces, | |
$search, | |||
$limit, | |||
$offset | |||
) |
Unless overridden by PrefixSearchBackend hook... This is case-sensitive (First character may be automatically capitalized by Title::secureAndSpit() later on depending on $wgCapitalLinks)
int[] | null | $namespaces | Namespaces to search in |
string | $search | Term |
int | $limit | Max number of items to return |
int | $offset | Number of items to skip |
Definition at line 240 of file PrefixSearch.php.
References $dbr, $res, $title, DB_REPLICA, LIST_AND, LIST_OR, TitleArray\newFromResult(), NS_MAIN, NS_SPECIAL, specialSearch(), and wfGetDB().
Referenced by searchBackend(), and SearchEngine\simplePrefixSearch().
|
private |
Definition at line 136 of file PrefixSearch.php.
Referenced by searchBackend().
PrefixSearch::search | ( | $search, | |
$limit, | |||
$namespaces = [] , |
|||
$offset = 0 |
|||
) |
Do a prefix search of titles and return a list of matching page names.
string | $search | |
int | $limit | |
array | $namespaces | Used if query is not explicitly prefixed |
int | $offset | How many results to offset from the beginning |
Definition at line 43 of file PrefixSearch.php.
References searchBackend().
Referenced by searchWithVariants().
|
protected |
Do a prefix search of titles and return a list of matching page names.
int[] | $namespaces | |
string | $search | |
int | $limit | |
int | $offset | How many results to offset from the beginning |
Definition at line 117 of file PrefixSearch.php.
References defaultSearchBackend(), handleResultFromHook(), NS_FILE, NS_MEDIA, NS_SPECIAL, specialSearch(), strings(), and titles().
Referenced by search().
PrefixSearch::searchWithVariants | ( | $search, | |
$limit, | |||
array | $namespaces, | ||
$offset = 0 |
|||
) |
Do a prefix search for all possible variants of the prefix.
string | $search | |
int | $limit | |
array | $namespaces | |
int | $offset | How many results to offset from the beginning |
Definition at line 66 of file PrefixSearch.php.
References search().
|
protected |
Prefix search special-case for Special: namespace.
string | $search | Term |
int | $limit | Max number of items to return |
int | $offset | Number of items to offset |
Definition at line 156 of file PrefixSearch.php.
References $keys, $matches, and NS_SPECIAL.
Referenced by defaultSearchBackend(), and searchBackend().
|
abstractprotected |
When implemented in a descendant class, receives an array of titles as strings and returns either an unmodified array or an array of Title objects corresponding to strings received.
string[] | $strings |
Reimplemented in StringPrefixSearch, and TitlePrefixSearch.
Referenced by searchBackend().
|
abstractprotected |
When implemented in a descendant class, receives an array of Title objects and returns either an unmodified array or an array of strings corresponding to titles passed to it.
Title[] | $titles |
Reimplemented in StringPrefixSearch, and TitlePrefixSearch.
Referenced by searchBackend().
|
protected |
Validate an array of numerical namespace indexes.
array | $namespaces |
Definition at line 302 of file PrefixSearch.php.
References NS_MAIN.