Inherits SearchEngine.
Public Member Functions | |
| __construct ($db) | |
| searchText ($term) | |
| Perform a full text search query and return a result set. | |
| searchTitle ($term) | |
| Perform a title-only search query and return a result set. | |
| queryRedirect () | |
| Return a partial WHERE clause to exclude redirects, if so set. | |
| queryNamespaces () | |
| Return a partial WHERE clause to limit the search to the given namespaces. | |
| queryLimit ($sql) | |
| Return a LIMIT clause to limit results on the query. | |
| queryRanking ($filteredTerm, $fulltext) | |
| Does not do anything for generic search engine subclasses may define this though. | |
| getQuery ($filteredTerm, $fulltext) | |
| Construct the full SQL query to do the search. | |
| getIndexField ($fulltext) | |
| Picks which field to index on, depending on what type of query. | |
| queryMain ($filteredTerm, $fulltext) | |
| Get the base part of the search query. | |
| parseQuery ($filteredText, $fulltext) | |
| Parse a user input search string, and return an SQL fragment to be used as part of a WHERE clause. | |
| update ($id, $title, $text) | |
| Create or update the search index record for the given page. | |
| updateTitle ($id, $title) | |
| Update a search index record's title only. | |
Static Public Member Functions | |
| static | legalSearchChars () |
Private Member Functions | |
| escapeTerm ($t) | |
Private Attributes | |
| $reservedWords | |
Definition at line 29 of file SearchOracle.php.
| SearchOracle::__construct | ( | $ | db | ) |
Definition at line 58 of file SearchOracle.php.
| SearchOracle::escapeTerm | ( | $ | t | ) | [private] |
Definition at line 218 of file SearchOracle.php.
References $t, and $wgContLang.
Referenced by parseQuery().
| SearchOracle::getIndexField | ( | $ | fulltext | ) |
Picks which field to index on, depending on what type of query.
| $fulltext | Boolean |
Definition at line 154 of file SearchOracle.php.
Referenced by parseQuery().
| SearchOracle::getQuery | ( | $ | filteredTerm, | |
| $ | fulltext | |||
| ) |
Construct the full SQL query to do the search.
The guts shoulds be constructed in queryMain()
| $filteredTerm | String | |
| $fulltext | Boolean |
Definition at line 141 of file SearchOracle.php.
References queryLimit(), queryMain(), queryNamespaces(), queryRanking(), and queryRedirect().
| static SearchOracle::legalSearchChars | ( | ) | [static] |
Reimplemented from SearchEngine.
Definition at line 265 of file SearchOracle.php.
Referenced by parseQuery().
| SearchOracle::parseQuery | ( | $ | filteredText, | |
| $ | fulltext | |||
| ) |
Parse a user input search string, and return an SQL fragment to be used as part of a WHERE clause.
Definition at line 178 of file SearchOracle.php.
References $t, $wgContLang, escapeTerm(), getIndexField(), and legalSearchChars().
Referenced by queryMain().
| SearchOracle::queryLimit | ( | $ | sql | ) |
Return a LIMIT clause to limit results on the query.
Definition at line 122 of file SearchOracle.php.
Referenced by getQuery().
| SearchOracle::queryMain | ( | $ | filteredTerm, | |
| $ | fulltext | |||
| ) |
Get the base part of the search query.
| $filteredTerm | String | |
| $fulltext | Boolean |
Definition at line 165 of file SearchOracle.php.
References $page, and parseQuery().
Referenced by getQuery().
| SearchOracle::queryNamespaces | ( | ) |
Return a partial WHERE clause to limit the search to the given namespaces.
Definition at line 107 of file SearchOracle.php.
References SearchEngine::$namespaces.
Referenced by getQuery().
| SearchOracle::queryRanking | ( | $ | filteredTerm, | |
| $ | fulltext | |||
| ) |
Does not do anything for generic search engine subclasses may define this though.
Definition at line 131 of file SearchOracle.php.
Referenced by getQuery().
| SearchOracle::queryRedirect | ( | ) |
Return a partial WHERE clause to exclude redirects, if so set.
Definition at line 95 of file SearchOracle.php.
Referenced by getQuery().
| SearchOracle::searchText | ( | $ | term | ) |
Perform a full text search query and return a result set.
| $term | String: raw search term |
Reimplemented from SearchEngine.
Definition at line 68 of file SearchOracle.php.
| SearchOracle::searchTitle | ( | $ | term | ) |
Perform a title-only search query and return a result set.
| $term | String: raw search term |
Reimplemented from SearchEngine.
Definition at line 82 of file SearchOracle.php.
| SearchOracle::update | ( | $ | id, | |
| $ | title, | |||
| $ | text | |||
| ) |
Create or update the search index record for the given page.
Title and text should be pre-processed.
| $id | Integer | |
| $title | String | |
| $text | String |
Reimplemented from SearchEngine.
Definition at line 234 of file SearchOracle.php.
| SearchOracle::updateTitle | ( | $ | id, | |
| $ | title | |||
| ) |
Update a search index record's title only.
Title should be pre-processed.
| int | $id | |
| string | $title |
Reimplemented from SearchEngine.
Definition at line 254 of file SearchOracle.php.
SearchOracle::$reservedWords [private] |
Initial value:
array ('ABOUT' => 1, 'ACCUM' => 1, 'AND' => 1, 'BT' => 1, 'BTG' => 1, 'BTI' => 1, 'BTP' => 1, 'FUZZY' => 1, 'HASPATH' => 1, 'INPATH' => 1, 'MINUS' => 1, 'NEAR' => 1, 'NOT' => 1, 'NT' => 1, 'NTG' => 1, 'NTI' => 1, 'NTP' => 1, 'OR' => 1, 'PT' => 1, 'RT' => 1, 'SQE' => 1, 'SYN' => 1, 'TR' => 1, 'TRSYN' => 1, 'TT' => 1, 'WITHIN' => 1)
Definition at line 31 of file SearchOracle.php.
1.5.9