MediaWiki
1.23.0
|
This is a base class for all Query modules. More...
Public Member Functions | |
__construct (ApiBase $query, $moduleName, $paramPrefix='') | |
getCacheMode ( $params) | |
Get the cache mode for the data generated by this module. More... | |
getDirectionDescription ( $p='', $extraDirText='') | |
Gets the personalised direction parameter description. More... | |
getPossibleErrors () | |
getQuery () | |
Get the main Query module. More... | |
keyPartToTitle ( $keyPart) | |
An alternative to keyToTitle() that doesn't trim trailing spaces. More... | |
keyToTitle ( $key) | |
The inverse of titleToKey() More... | |
prepareUrlQuerySearchString ( $query=null, $protocol=null) | |
requestExtraData ( $pageSet) | |
Override this method to request extra fields from the pageSet using $pageSet->requestField('fieldName') More... | |
selectNamedDB ( $name, $db, $groups) | |
Selects the query database connection with the given name. More... | |
showHiddenUsersAddBlockInfo ( $showBlockInfo) | |
Filters hidden users (where the user doesn't have the right to view them) Also adds relevant block information. More... | |
titlePartToKey ( $titlePart, $defaultNamespace=NS_MAIN) | |
An alternative to titleToKey() that doesn't trim trailing spaces, and does not mangle the input if starts with something that looks like a namespace. More... | |
titleToKey ( $title) | |
Convert a title to a DB key. More... | |
userCanSeeRevDel () | |
Check whether the current user has permission to view revision-deleted fields. More... | |
validateSha1Base36Hash ( $hash) | |
validateSha1Hash ( $hash) | |
Public Member Functions inherited from ApiBase | |
__construct ( $mainModule, $moduleName, $modulePrefix='') | |
Constructor. More... | |
createContext () | |
Create a new RequestContext object to use e.g. More... | |
dieReadOnly () | |
Helper function for readonly errors. More... | |
dieStatus ( $status) | |
Throw a UsageException based on the errors in the Status object. More... | |
dieUsage ( $description, $errorCode, $httpRespCode=0, $extradata=null) | |
Throw a UsageException, which will (if uncaught) call the main module's error handler and die with an error message. More... | |
dieUsageMsg ( $error) | |
Output the error message related to a certain array. More... | |
dieUsageMsgOrDebug ( $error) | |
Will only set a warning instead of failing if the global $wgDebugAPI is set to true. More... | |
encodeParamName ( $paramName) | |
This method mangles parameter name based on the prefix supplied to the constructor. More... | |
execute () | |
Evaluates the parameters, performs the requested query, and sets up the result. More... | |
extractRequestParams ( $parseLimit=true) | |
Using getAllowedParams(), this function makes an array of the values provided by the user, with key being the name of the variable, and value - validated value from user or default. More... | |
getCustomPrinter () | |
If the module may only be used with a certain format module, it should override this method to return an instance of that formatter. More... | |
getErrorFromStatus ( $status) | |
Get error (as code, string) from a Status object. More... | |
getFinalDescription () | |
Get final module description, after hooks have had a chance to tweak it as needed. More... | |
getFinalParamDescription () | |
Get final parameter descriptions, after hooks have had a chance to tweak it as needed. More... | |
getFinalParams ( $flags=0) | |
Get final list of parameters, after hooks have had a chance to tweak it as needed. More... | |
getFinalPossibleErrors () | |
Get final list of possible errors, after hooks have had a chance to tweak it as needed. More... | |
getFinalResultProperties () | |
Get final possible result properties, after hooks have had a chance to tweak it as needed. More... | |
getHelpUrls () | |
getMain () | |
Get the main module. More... | |
getModuleManager () | |
Get the module manager, or null if this module has no sub-modules. More... | |
getModuleName () | |
Get the name of the module being executed by this instance. More... | |
getModulePrefix () | |
Get parameter prefix (usually two letters or an empty string). More... | |
getModuleProfileName ( $db=false) | |
Get the name of the module as shown in the profiler log. More... | |
getProfileDBTime () | |
Total time the module used the database. More... | |
getProfileTime () | |
Total time the module was executed. More... | |
getRequireAtLeastOneParameterErrorMessages ( $params) | |
Generates the possible errors requireAtLeastOneParameter() can die with. More... | |
getRequireMaxOneParameterErrorMessages ( $params) | |
Generates the possible error requireMaxOneParameter() can die with. More... | |
getRequireOnlyOneParameterErrorMessages ( $params) | |
Generates the possible errors requireOnlyOneParameter() can die with. More... | |
getResult () | |
Get the result object. More... | |
getResultData () | |
Get the result data array (read-only) More... | |
getTitleOrPageId ( $params, $load=false) | |
getTitleOrPageIdErrorMessage () | |
getTokenSalt () | |
Returns the token salt if there is one, '' if the module doesn't require a salt, else false if the module doesn't need a token You have also to override needsToken() Value is passed to User::getEditToken. More... | |
getVersion () | |
Returns a string that identifies the version of the extending class. More... | |
getWatchlistUser ( $params) | |
Gets the user for whom to get the watchlist. More... | |
isMain () | |
Returns true if this module is the main module ($this === $this->mMainModule), false otherwise. More... | |
isReadMode () | |
Indicates whether this module requires read rights. More... | |
isWriteMode () | |
Indicates whether this module requires write mode. More... | |
makeHelpMsg () | |
Generates help message for this module, or false if there is no description. More... | |
makeHelpMsgParameters () | |
Generates the parameter descriptions for this module, to be displayed in the module's help. More... | |
mustBePosted () | |
Indicates whether this module must be called with a POST request. More... | |
needsToken () | |
Returns whether this module requires a token to execute It is used to show possible errors in action=paraminfo see bug 25248. More... | |
parseErrors ( $errors) | |
Parses a list of errors into a standardised format. More... | |
parseMsg ( $error) | |
Return the error message related to a certain array. More... | |
profileDBIn () | |
Start module profiling. More... | |
profileDBOut () | |
End database profiling. More... | |
profileIn () | |
Start module profiling. More... | |
profileOut () | |
End module profiling. More... | |
requireAtLeastOneParameter ( $params) | |
Die if none of a certain set of parameters is set and not false. More... | |
requireMaxOneParameter ( $params) | |
Die if more than one of a certain set of parameters is set and not false. More... | |
requireOnlyOneParameter ( $params) | |
Die if none or more than one of a certain set of parameters is set and not false. More... | |
safeProfileOut () | |
When modules crash, sometimes it is needed to do a profileOut() regardless of the profiling state the module was in. More... | |
setWarning ( $warning) | |
Set warning section for this module. More... | |
shouldCheckMaxlag () | |
Indicates if this module needs maxlag to be checked. More... | |
validateLimit ( $paramName, &$value, $min, $max, $botMax=null, $enforceLimits=false) | |
Validate the value against the minimum and user/bot maximum limits. More... | |
validateTimestamp ( $value, $encParamName) | |
Validate and normalize of parameters of type 'timestamp'. More... | |
Public Member Functions inherited from ContextSource | |
canUseWikiPage () | |
Check whether a WikiPage object can be get with getWikiPage(). More... | |
exportSession () | |
Export the resolved user IP, HTTP headers, user ID, and session ID. More... | |
getConfig () | |
Get the Config object. More... | |
getContext () | |
Get the RequestContext object. More... | |
getLang () | |
Get the Language object. More... | |
getLanguage () | |
Get the Language object. More... | |
getOutput () | |
Get the OutputPage object. More... | |
getRequest () | |
Get the WebRequest object. More... | |
getSkin () | |
Get the Skin object. More... | |
getTitle () | |
Get the Title object. More... | |
getUser () | |
Get the User object. More... | |
getWikiPage () | |
Get the WikiPage object. More... | |
msg () | |
Get a Message object with context set Parameters are the same as wfMessage() More... | |
setContext (IContextSource $context) | |
Set the IContextSource object. More... | |
Static Public Member Functions | |
static | addTitleInfo (&$arr, $title, $prefix='') |
Add information (title and namespace) about a Title object to a result array. More... | |
Static Public Member Functions inherited from ApiBase | |
static | debugPrint ( $value, $name='unknown', $backtrace=false) |
Debugging function that prints a value and an optional backtrace. More... | |
static | truncateArray (&$arr, $limit) |
Truncate an array to a certain length. More... | |
Public Attributes | |
$fields | |
$join_conds | |
$mDb | |
$options | |
$tables | |
$where | |
Public Attributes inherited from ApiBase | |
$mDBTime = 0 | |
$mModuleName | |
$mModulePrefix | |
$mModuleTime = 0 | |
const | GET_VALUES_FOR_HELP = 1 |
getAllowedParams() flag: When set, the result could take longer to generate, but should be more thorough. More... | |
const | LIMIT_BIG1 = 500 |
const | LIMIT_BIG2 = 5000 |
const | LIMIT_SML1 = 50 |
const | LIMIT_SML2 = 500 |
const | PARAM_ALLOW_DUPLICATES = 6 |
const | PARAM_DEPRECATED = 7 |
const | PARAM_DFLT = 0 |
const | PARAM_ISMULTI = 1 |
const | PARAM_MAX = 3 |
const | PARAM_MAX2 = 4 |
const | PARAM_MIN = 5 |
const | PARAM_RANGE_ENFORCE = 9 |
const | PARAM_REQUIRED = 8 |
const | PARAM_TYPE = 2 |
const | PROP_LIST = 'LIST' |
const | PROP_NULLABLE = 1 |
const | PROP_ROOT = 'ROOT' |
const | PROP_TYPE = 0 |
Protected Member Functions | |
addFields ( $value) | |
Add a set of fields to select to the internal array. More... | |
addFieldsIf ( $value, $condition) | |
Same as addFields(), but add the fields only if a condition is met. More... | |
addJoinConds ( $join_conds) | |
Add a set of JOIN conditions to the internal array. More... | |
addOption ( $name, $value=null) | |
Add an option such as LIMIT or USE INDEX. More... | |
addPageSubItem ( $pageId, $item, $elemname=null) | |
Same as addPageSubItems(), but one element of $data at a time. More... | |
addPageSubItems ( $pageId, $data) | |
Add a sub-element under the page element with the given page ID. More... | |
addTables ( $tables, $alias=null) | |
Add a set of tables to the internal array. More... | |
addTimestampWhereRange ( $field, $dir, $start, $end, $sort=true) | |
Add a WHERE clause corresponding to a range, similar to addWhereRange, but converts $start and $end to database timestamps. More... | |
addWhere ( $value) | |
Add a set of WHERE clauses to the internal array. More... | |
addWhereFld ( $field, $value) | |
Equivalent to addWhere(array($field => $value)) More... | |
addWhereIf ( $value, $condition) | |
Same as addWhere(), but add the WHERE clauses only if a condition is met. More... | |
addWhereRange ( $field, $dir, $start, $end, $sort=true) | |
Add a WHERE clause corresponding to a range, and an ORDER BY clause to sort in the right direction. More... | |
checkRowCount () | |
Estimate the row count for the SELECT query that would be run if we called select() right now, and check if it's acceptable. More... | |
getDB () | |
Get the Query database connection (read-only) More... | |
getPageSet () | |
Get the PageSet object to work on. More... | |
resetQueryParams () | |
Blank the internal arrays with query parameters. More... | |
select ( $method, $extraQuery=array()) | |
Execute a SELECT query based on the values in the internal arrays. More... | |
setContinueEnumParameter ( $paramName, $paramValue) | |
Set a query-continue value. More... | |
Protected Member Functions inherited from ApiBase | |
dieContinueUsageIf ( $condition) | |
Die with the $prefix. More... | |
getAllowedParams () | |
Returns an array of allowed parameters (parameter name) => (default value) or (parameter name) => (array with PARAM_* constants as keys) Don't call this function directly: use getFinalParams() to allow hooks to modify parameters as needed. More... | |
getDescription () | |
Returns the description string for this module. More... | |
getExamples () | |
Returns usage examples for this module. More... | |
getParamDescription () | |
Returns an array of parameter descriptions. More... | |
getParameter ( $paramName, $parseLimit=true) | |
Get a value for the given parameter. More... | |
getParameterFromSettings ( $paramName, $paramSettings, $parseLimit) | |
Using the settings determine the value for the given parameter. More... | |
getResultProperties () | |
Returns possible properties in the result, grouped by the value of the prop parameter that shows them. More... | |
getWatchlistValue ( $watchlist, $titleObj, $userOption=null) | |
Return true if we're to watch the page, false if not, null if no change. More... | |
makeHelpArrayToString ( $prefix, $title, $input) | |
parseMultiValue ( $valueName, $value, $allowMultiple, $allowedValues) | |
Return an array of values that were given in a 'a|b|c' notation, after it optionally validates them against the list allowed values. More... | |
setWatch ( $watch, $titleObj, $userOption=null) | |
Set a watch (or unwatch) based the based on a watchlist parameter. More... | |
Private Attributes | |
$mQueryModule | |
Additional Inherited Members | |
Static Public Attributes inherited from ApiBase | |
static | $messageMap |
Array that maps message keys to error messages. More... | |
Static Protected Member Functions inherited from ApiBase | |
static | addTokenProperties (&$props, $tokenFunctions) |
Add token properties to the array used by getResultProperties, based on a token functions mapping. More... | |
static | dieDebug ( $method, $message) |
Internal code errors should be reported with this method. More... | |
This is a base class for all Query modules.
It provides some common functionality such as constructing various SQL queries.
Definition at line 34 of file ApiQueryBase.php.
ApiQueryBase::__construct | ( | ApiBase | $query, |
$moduleName, | |||
$paramPrefix = '' |
|||
) |
$query | ApiBase |
$moduleName | string |
$paramPrefix | string |
Definition at line 43 of file ApiQueryBase.php.
References $query, and resetQueryParams().
|
protected |
Add a set of fields to select to the internal array.
array | string | $value | Field name or array of field names |
Definition at line 117 of file ApiQueryBase.php.
References $value.
Referenced by addFieldsIf(), ApiQueryExternalLinks\execute(), ApiQueryDeletedrevs\execute(), ApiQueryLangLinks\execute(), ApiQueryIWLinks\execute(), ApiQueryCategoryInfo\execute(), ApiQueryFilearchive\execute(), ApiQueryPageProps\execute(), ApiQueryBlocks\execute(), ApiQueryLogEvents\execute(), ApiQueryPagePropNames\execute(), ApiQueryTags\execute(), ApiQueryAllUsers\execute(), ApiQueryContributors\execute(), ApiQueryUsers\execute(), ApiQueryRevisions\execute(), ApiQueryInfo\getDisplayTitle(), ApiQueryInfo\getProtectionInfo(), ApiQueryInfo\getTSIDs(), ApiQueryInfo\getWatchedInfo(), ApiQueryInfo\getWatcherInfo(), ApiQueryBacklinks\prepareFirstQuery(), ApiQueryRandom\prepareQuery(), ApiQueryContributions\prepareQuery(), ApiQueryBacklinks\prepareSecondQuery(), ApiQueryProtectedTitles\run(), ApiQueryRedirects\run(), ApiQueryImages\run(), ApiQueryLangBacklinks\run(), ApiQueryIWBacklinks\run(), ApiQueryWatchlistRaw\run(), ApiQueryExtLinksUsage\run(), ApiQueryCategories\run(), ApiQueryCategoryMembers\run(), ApiQueryAllCategories\run(), ApiQueryPagesWithProp\run(), ApiQueryWatchlist\run(), ApiQueryAllPages\run(), ApiQueryAllImages\run(), ApiQueryLinks\run(), ApiQueryAllLinks\run(), ApiQueryRecentChanges\run(), and showHiddenUsersAddBlockInfo().
|
protected |
Same as addFields(), but add the fields only if a condition is met.
array | string | $value | See addFields() |
bool | $condition | If false, do nothing |
Definition at line 131 of file ApiQueryBase.php.
References $value, and addFields().
Referenced by ApiQueryDeletedrevs\execute(), ApiQueryFilearchive\execute(), ApiQueryBlocks\execute(), ApiQueryLogEvents\execute(), ApiQueryTags\execute(), ApiQueryAllUsers\execute(), ApiQueryInfo\getWatchedInfo(), ApiQueryContributions\prepareQuery(), ApiQueryProtectedTitles\run(), ApiQueryRedirects\run(), ApiQueryWatchlistRaw\run(), ApiQueryExtLinksUsage\run(), ApiQueryCategories\run(), ApiQueryAllCategories\run(), ApiQueryCategoryMembers\run(), ApiQueryPagesWithProp\run(), ApiQueryWatchlist\run(), ApiQueryAllLinks\run(), and ApiQueryRecentChanges\run().
|
protected |
Add a set of JOIN conditions to the internal array.
JOIN conditions are formatted as array( tablename => array(jointype, conditions) e.g. array('page' => array('LEFT JOIN', 'page_id=rev_page')) . conditions may be a string or an addWhere()-style array
$join_conds | array JOIN conditions |
Definition at line 106 of file ApiQueryBase.php.
References $join_conds, and ApiBase\dieDebug().
Referenced by ApiQueryDeletedrevs\execute(), ApiQueryCategoryInfo\execute(), ApiQueryLogEvents\execute(), ApiQueryContributors\execute(), ApiQueryAllUsers\execute(), ApiQueryUsers\execute(), ApiQueryRevisions\execute(), ApiQueryContributions\prepareQuery(), ApiQueryProtectedTitles\run(), ApiQueryCategories\run(), ApiQueryAllCategories\run(), ApiQueryWatchlist\run(), ApiQueryAllPages\run(), ApiQueryAllImages\run(), ApiQueryRecentChanges\run(), and showHiddenUsersAddBlockInfo().
|
protected |
Add an option such as LIMIT or USE INDEX.
If an option was set before, the old value will be overwritten
string | $name | Option name |
string | $value | Option value |
Definition at line 252 of file ApiQueryBase.php.
References $name, $value, and options().
Referenced by addWhereRange(), ApiQueryLangLinks\execute(), ApiQueryDeletedrevs\execute(), ApiQueryExternalLinks\execute(), ApiQueryCategoryInfo\execute(), ApiQueryIWLinks\execute(), ApiQueryFilearchive\execute(), ApiQueryPageProps\execute(), ApiQueryBlocks\execute(), ApiQueryLogEvents\execute(), ApiQueryPagePropNames\execute(), ApiQueryTags\execute(), ApiQueryAllUsers\execute(), ApiQueryContributors\execute(), ApiQueryRevisions\execute(), ApiQueryInfo\getWatcherInfo(), ApiQueryBacklinks\prepareFirstQuery(), ApiQueryRandom\prepareQuery(), ApiQueryContributions\prepareQuery(), ApiQueryBacklinks\prepareSecondQuery(), ApiQueryRedirects\run(), ApiQueryImages\run(), ApiQueryIWBacklinks\run(), ApiQueryLangBacklinks\run(), ApiQueryProtectedTitles\run(), ApiQueryWatchlistRaw\run(), ApiQueryExtLinksUsage\run(), ApiQueryCategories\run(), ApiQueryAllCategories\run(), ApiQueryCategoryMembers\run(), ApiQueryPagesWithProp\run(), ApiQueryWatchlist\run(), ApiQueryAllPages\run(), ApiQueryLinks\run(), ApiQueryAllImages\run(), ApiQueryAllLinks\run(), and ApiQueryRecentChanges\run().
|
protected |
Same as addPageSubItems(), but one element of $data at a time.
int | $pageId | Page ID |
array | $item | Data array à la ApiResult |
string | $elemname | XML element name. If null, getModuleName() is used |
Definition at line 383 of file ApiQueryBase.php.
References array(), ApiBase\getModuleName(), ApiBase\getModulePrefix(), and ApiBase\getResult().
Referenced by ApiQueryExternalLinks\execute(), ApiQueryLangLinks\execute(), ApiQueryIWLinks\execute(), ApiQueryImageInfo\execute(), ApiQueryContributors\execute(), ApiQueryRevisions\execute(), ApiQueryImages\run(), ApiQueryRedirects\run(), ApiQueryCategories\run(), ApiQueryDuplicateFiles\run(), and ApiQueryLinks\run().
|
protected |
Add a sub-element under the page element with the given page ID.
Definition at line 366 of file ApiQueryBase.php.
References array(), ApiBase\getModuleName(), ApiBase\getModulePrefix(), and ApiBase\getResult().
Referenced by ApiQueryCategoryInfo\execute().
|
protected |
Add a set of tables to the internal array.
$tables | mixed Table name or array of table names |
$alias | mixed Table alias, or null for no alias. Cannot be used with multiple tables |
Definition at line 82 of file ApiQueryBase.php.
References $tables, and ApiBase\dieDebug().
Referenced by ApiQueryDeletedrevs\execute(), ApiQueryExternalLinks\execute(), ApiQueryLangLinks\execute(), ApiQueryIWLinks\execute(), ApiQueryCategoryInfo\execute(), ApiQueryFilearchive\execute(), ApiQueryPageProps\execute(), ApiQueryBlocks\execute(), ApiQueryLogEvents\execute(), ApiQueryPagePropNames\execute(), ApiQueryTags\execute(), ApiQueryAllUsers\execute(), ApiQueryContributors\execute(), ApiQueryUsers\execute(), ApiQueryRevisions\execute(), ApiQueryInfo\getDisplayTitle(), ApiQueryInfo\getProtectionInfo(), ApiQueryInfo\getTSIDs(), ApiQueryInfo\getWatchedInfo(), ApiQueryInfo\getWatcherInfo(), ApiQueryBacklinks\prepareFirstQuery(), ApiQueryRandom\prepareQuery(), ApiQueryContributions\prepareQuery(), ApiQueryBacklinks\prepareSecondQuery(), ApiQueryProtectedTitles\run(), ApiQueryImages\run(), ApiQueryIWBacklinks\run(), ApiQueryLangBacklinks\run(), ApiQueryRedirects\run(), ApiQueryWatchlistRaw\run(), ApiQueryExtLinksUsage\run(), ApiQueryCategories\run(), ApiQueryAllCategories\run(), ApiQueryCategoryMembers\run(), ApiQueryPagesWithProp\run(), ApiQueryWatchlist\run(), ApiQueryAllPages\run(), ApiQueryLinks\run(), ApiQueryAllImages\run(), ApiQueryAllLinks\run(), ApiQueryRecentChanges\run(), and showHiddenUsersAddBlockInfo().
|
protected |
Add a WHERE clause corresponding to a range, similar to addWhereRange, but converts $start and $end to database timestamps.
$field | |
$dir | |
$start | |
$end | |
$sort | bool |
Definition at line 240 of file ApiQueryBase.php.
References $dir, $sort, and addWhereRange().
Referenced by ApiQueryDeletedrevs\execute(), ApiQueryBlocks\execute(), ApiQueryLogEvents\execute(), ApiQueryRevisions\execute(), ApiQueryContributions\prepareQuery(), ApiQueryProtectedTitles\run(), ApiQueryCategoryMembers\run(), ApiQueryWatchlist\run(), ApiQueryAllImages\run(), and ApiQueryRecentChanges\run().
|
static |
Add information (title and namespace) about a Title object to a result array.
Definition at line 339 of file ApiQueryBase.php.
References $title.
Referenced by ApiQueryLogEvents\addLogParams(), ApiImageRotate\addValues(), ApiPageSet\addValues(), ApiPatrol\execute(), ApiPurge\execute(), ApiQueryDeletedrevs\execute(), ApiQueryFilearchive\execute(), ApiImageRotate\execute(), ApiQueryBacklinks\extractRedirRowInfo(), ApiQueryRandom\extractRowInfo(), ApiQueryWatchlist\extractRowInfo(), ApiQueryContributions\extractRowInfo(), ApiQueryLogEvents\extractRowInfo(), ApiQueryBacklinks\extractRowInfo(), ApiQueryRecentChanges\extractRowInfo(), ApiQuery\outputGeneralPageInfo(), ApiImportReporter\reportPage(), ApiQueryRedirects\run(), ApiQueryImages\run(), ApiQueryIWBacklinks\run(), ApiQueryProtectedTitles\run(), ApiQueryLangBacklinks\run(), ApiQueryWatchlistRaw\run(), ApiQueryExtLinksUsage\run(), ApiQueryCategories\run(), ApiQueryCategoryMembers\run(), ApiQueryPagesWithProp\run(), ApiQuerySearch\run(), ApiQueryQueryPage\run(), ApiQueryAllImages\run(), ApiQueryLinks\run(), and ApiQueryAllLinks\run().
|
protected |
Add a set of WHERE clauses to the internal array.
Clauses can be formatted as 'foo=bar' or array('foo' => 'bar'), the latter only works if the value is a constant (i.e. not another field)
If $value is an empty array, this function does nothing.
For example, array('foo=bar', 'baz' => 3, 'bla' => 'foo') translates to "foo=bar AND baz='3' AND bla='foo'"
$value | mixed String or array |
Definition at line 152 of file ApiQueryBase.php.
References $value.
Referenced by addWhereIf(), addWhereRange(), ApiQueryDeletedrevs\execute(), ApiQueryExternalLinks\execute(), ApiQueryLangLinks\execute(), ApiQueryIWLinks\execute(), ApiQueryCategoryInfo\execute(), ApiQueryFilearchive\execute(), ApiQueryPageProps\execute(), ApiQueryBlocks\execute(), ApiQueryLogEvents\execute(), ApiQueryAllUsers\execute(), ApiQueryContributors\execute(), ApiQueryRevisions\execute(), ApiQueryInfo\getProtectionInfo(), ApiQueryInfo\getTSIDs(), ApiQueryInfo\getWatchedInfo(), ApiQueryInfo\getWatcherInfo(), ApiQueryBacklinks\prepareFirstQuery(), ApiQueryContributions\prepareQuery(), ApiQueryBacklinks\prepareSecondQuery(), ApiQueryProtectedTitles\run(), ApiQueryRedirects\run(), ApiQueryImages\run(), ApiQueryIWBacklinks\run(), ApiQueryLangBacklinks\run(), ApiQueryWatchlistRaw\run(), ApiQueryExtLinksUsage\run(), ApiQueryCategories\run(), ApiQueryAllCategories\run(), ApiQueryCategoryMembers\run(), ApiQueryPagesWithProp\run(), ApiQueryWatchlist\run(), ApiQueryAllPages\run(), ApiQueryLinks\run(), ApiQueryAllImages\run(), ApiQueryAllLinks\run(), ApiQueryRecentChanges\run(), and showHiddenUsersAddBlockInfo().
|
protected |
Equivalent to addWhere(array($field => $value))
string | $field | Field name |
string | $value | Value; ignored if null or empty array; |
Definition at line 185 of file ApiQueryBase.php.
References $value.
Referenced by ApiQueryDeletedrevs\execute(), ApiQueryExternalLinks\execute(), ApiQueryLangLinks\execute(), ApiQueryIWLinks\execute(), ApiQueryPageProps\execute(), ApiQueryFilearchive\execute(), ApiQueryBlocks\execute(), ApiQueryLogEvents\execute(), ApiQueryContributors\execute(), ApiQueryUsers\execute(), ApiQueryRevisions\execute(), ApiQueryInfo\getDisplayTitle(), ApiQueryInfo\getProtectionInfo(), ApiQueryBacklinks\prepareFirstQuery(), ApiQueryRandom\prepareQuery(), ApiQueryContributions\prepareQuery(), ApiQueryBacklinks\prepareSecondQuery(), ApiQueryIWBacklinks\run(), ApiQueryLangBacklinks\run(), ApiQueryImages\run(), ApiQueryProtectedTitles\run(), ApiQueryWatchlistRaw\run(), ApiQueryExtLinksUsage\run(), ApiQueryCategories\run(), ApiQueryCategoryMembers\run(), ApiQueryPagesWithProp\run(), ApiQueryWatchlist\run(), ApiQueryAllPages\run(), ApiQueryAllImages\run(), ApiQueryLinks\run(), ApiQueryAllLinks\run(), and ApiQueryRecentChanges\run().
|
protected |
Same as addWhere(), but add the WHERE clauses only if a condition is met.
$value | mixed See addWhere() | |
bool | $condition | If false, do nothing |
Definition at line 170 of file ApiQueryBase.php.
References $value, and addWhere().
Referenced by ApiQueryBlocks\execute(), ApiQueryContributors\execute(), ApiQueryContributions\prepareQuery(), ApiQueryRedirects\run(), ApiQueryWatchlistRaw\run(), ApiQueryWatchlist\run(), and ApiQueryRecentChanges\run().
|
protected |
Add a WHERE clause corresponding to a range, and an ORDER BY clause to sort in the right direction.
string | $field | Field name |
string | $dir | If 'newer', sort in ascending order, otherwise sort in descending order |
string | $start | Value to start the list at. If $dir == 'newer' this is the lower boundary, otherwise it's the upper boundary |
string | $end | Value to end the list at. If $dir == 'newer' this is the upper boundary, otherwise it's the lower boundary |
bool | $sort | If false, don't add an ORDER BY clause |
Definition at line 205 of file ApiQueryBase.php.
References $dir, $sort, addOption(), addWhere(), array(), getDB(), and options().
Referenced by addTimestampWhereRange(), ApiQueryDeletedrevs\execute(), ApiQueryFilearchive\execute(), ApiQueryBlocks\execute(), ApiQueryLogEvents\execute(), ApiQueryPagePropNames\execute(), ApiQueryTags\execute(), ApiQueryAllUsers\execute(), ApiQueryRevisions\execute(), ApiQueryRandom\prepareQuery(), ApiQueryContributions\prepareQuery(), ApiQueryProtectedTitles\run(), ApiQueryCategoryMembers\run(), ApiQueryAllCategories\run(), ApiQueryPagesWithProp\run(), ApiQueryWatchlist\run(), ApiQueryAllPages\run(), ApiQueryAllImages\run(), and ApiQueryAllLinks\run().
|
protected |
Estimate the row count for the SELECT query that would be run if we called select() right now, and check if it's acceptable.
Definition at line 312 of file ApiQueryBase.php.
References getDB(), global, options(), ApiBase\profileDBIn(), and ApiBase\profileDBOut().
ApiQueryBase::getCacheMode | ( | $params | ) |
Get the cache mode for the data generated by this module.
Override this in the module subclass. For possible return values and other details about cache modes, see ApiMain::setCacheMode()
Public caching will only be allowed if all the modules that supply data for a given request return a cache mode of public.
$params |
Reimplemented in ApiQueryInfo, ApiQueryRevisions, ApiQueryRecentChanges, ApiQueryImageInfo, ApiQueryLogEvents, ApiQueryContributions, ApiQueryAllUsers, ApiQueryUsers, ApiQuerySearch, ApiQueryContributors, ApiQueryRedirects, ApiQueryAllMessages, ApiQueryProtectedTitles, ApiQueryIWBacklinks, ApiQueryLangBacklinks, ApiQueryRandom, ApiQueryImages, ApiQueryIWLinks, ApiQueryLangLinks, ApiQueryQueryPage, ApiQueryTags, ApiQueryPageProps, ApiQueryAllLinks, ApiQueryBacklinks, ApiQueryExternalLinks, ApiQueryCategoryInfo, ApiQueryPrefixSearch, ApiQueryLinks, ApiQueryFileRepoInfo, ApiQueryAllImages, ApiQueryAllCategories, ApiQueryPagesWithProp, ApiQueryAllPages, ApiQueryCategories, ApiQueryCategoryMembers, ApiQueryDuplicateFiles, ApiQueryExtLinksUsage, and ApiQueryPagePropNames.
Definition at line 61 of file ApiQueryBase.php.
|
protected |
Get the Query database connection (read-only)
Reimplemented from ApiBase.
Reimplemented in ApiQueryAllImages.
Definition at line 417 of file ApiQueryBase.php.
References $mDb, and getQuery().
Referenced by addWhereRange(), checkRowCount(), ApiQueryDeletedrevs\execute(), ApiQueryLangLinks\execute(), ApiQueryCategoryInfo\execute(), ApiQueryIWLinks\execute(), ApiQueryFilearchive\execute(), ApiQueryBlocks\execute(), ApiQueryContributions\execute(), ApiQueryLogEvents\execute(), ApiQueryContributors\execute(), ApiQueryAllUsers\execute(), ApiQueryRevisions\execute(), ApiQueryLogEvents\getCacheMode(), ApiQueryInfo\getProtectionInfo(), ApiQueryInfo\getTSIDs(), ApiQueryInfo\getWatchedInfo(), ApiQueryInfo\getWatcherInfo(), ApiQueryContributions\prepareQuery(), ApiQueryBacklinks\prepareSecondQuery(), ApiQueryImages\run(), ApiQueryIWBacklinks\run(), ApiQueryLangBacklinks\run(), ApiQueryRedirects\run(), ApiQueryProtectedTitles\run(), ApiQueryWatchlistRaw\run(), ApiQueryCategories\run(), ApiQueryAllCategories\run(), ApiQueryCategoryMembers\run(), ApiQueryWatchlist\run(), ApiQueryAllPages\run(), ApiQueryLinks\run(), ApiQueryAllLinks\run(), ApiQueryRecentChanges\run(), and select().
ApiQueryBase::getDirectionDescription | ( | $p = '' , |
|
$extraDirText = '' |
|||
) |
Gets the personalised direction parameter description.
string | $p | ModulePrefix |
string | $extraDirText | Any extra text to be appended on the description |
Definition at line 524 of file ApiQueryBase.php.
References array().
Referenced by ApiQueryProtectedTitles\getParamDescription(), ApiQueryBlocks\getParamDescription(), ApiQueryDeletedrevs\getParamDescription(), ApiQueryContributions\getParamDescription(), ApiQueryLogEvents\getParamDescription(), ApiQueryWatchlist\getParamDescription(), ApiQueryRecentChanges\getParamDescription(), and ApiQueryRevisions\getParamDescription().
|
protected |
Get the PageSet object to work on.
Reimplemented in ApiQueryGeneratorBase.
Definition at line 441 of file ApiQueryBase.php.
References getQuery().
Referenced by ApiQueryDeletedrevs\execute(), ApiQueryExternalLinks\execute(), ApiQueryLangLinks\execute(), ApiQueryCategoryInfo\execute(), ApiQueryIWLinks\execute(), ApiQueryPageProps\execute(), ApiQueryImageInfo\execute(), ApiQueryContributors\execute(), ApiQueryRevisions\execute(), and ApiQueryInfo\execute().
ApiQueryBase::getPossibleErrors | ( | ) |
Reimplemented from ApiBase.
Reimplemented in ApiQueryRecentChanges, ApiQueryRevisions, ApiQueryImageInfo, ApiQueryWatchlist, ApiQueryContributions, ApiQueryLogEvents, ApiQueryBacklinks, ApiQueryDeletedrevs, ApiQueryAllUsers, ApiQueryBlocks, ApiQueryCategoryMembers, ApiQuerySearch, ApiQueryAllImages, ApiQueryFilearchive, ApiQueryAllLinks, ApiQueryAllPages, ApiQueryContributors, ApiQueryExtLinksUsage, ApiQueryAllMessages, ApiQueryCategories, ApiQueryIWBacklinks, ApiQueryLangBacklinks, ApiQueryLangLinks, ApiQueryWatchlistRaw, ApiQueryQueryPage, ApiQueryIWLinks, and ApiQueryExternalLinks.
Definition at line 603 of file ApiQueryBase.php.
References array().
ApiQueryBase::getQuery | ( | ) |
Get the main Query module.
Definition at line 356 of file ApiQueryBase.php.
References $mQueryModule.
Referenced by getDB(), getPageSet(), selectNamedDB(), and ApiQueryGeneratorBase\setContinueEnumParameter().
ApiQueryBase::keyPartToTitle | ( | $keyPart | ) |
An alternative to keyToTitle() that doesn't trim trailing spaces.
string | $keyPart | Key part with spaces |
Definition at line 513 of file ApiQueryBase.php.
References keyToTitle().
ApiQueryBase::keyToTitle | ( | $key | ) |
The inverse of titleToKey()
string | $key | Page title with underscores |
Definition at line 468 of file ApiQueryBase.php.
References $t, array(), ApiBase\dieUsageMsg(), and Title\newFromDBkey().
Referenced by keyPartToTitle().
ApiQueryBase::prepareUrlQuerySearchString | ( | $query = null , |
|
$protocol = null |
|||
) |
$query | String |
$protocol | String |
Definition at line 537 of file ApiQueryBase.php.
References $query, ApiBase\dieUsage(), LinkFilter\keepOneWildcard(), and LinkFilter\makeLikeArray().
Referenced by ApiQueryExternalLinks\execute(), and ApiQueryExtLinksUsage\run().
ApiQueryBase::requestExtraData | ( | $pageSet | ) |
Override this method to request extra fields from the pageSet using $pageSet->requestField('fieldName')
$pageSet | ApiPageSet |
Reimplemented in ApiQueryInfo.
Definition at line 349 of file ApiQueryBase.php.
|
protected |
Blank the internal arrays with query parameters.
Definition at line 68 of file ApiQueryBase.php.
References array(), and options().
Referenced by __construct(), ApiQueryContributors\execute(), ApiQueryUsers\execute(), ApiQueryInfo\getDisplayTitle(), ApiQueryInfo\getProtectionInfo(), ApiQueryInfo\getTSIDs(), ApiQueryInfo\getWatchedInfo(), ApiQueryInfo\getWatcherInfo(), ApiQueryRandom\prepareQuery(), and ApiQueryBacklinks\run().
|
protected |
Execute a SELECT query based on the values in the internal arrays.
string | $method | Function the query should be attributed to. You should usually use METHOD here |
array | $extraQuery | Query data to add but not store in the object Format is array( 'tables' => ..., 'fields' => ..., 'where' => ..., 'options' => ..., 'join_conds' => ... ) |
Definition at line 274 of file ApiQueryBase.php.
References $fields, $join_conds, $options, $res, $tables, $where, array(), getDB(), options(), ApiBase\profileDBIn(), and ApiBase\profileDBOut().
Referenced by ApiQueryDeletedrevs\execute(), ApiQueryExternalLinks\execute(), ApiQueryLangLinks\execute(), ApiQueryIWLinks\execute(), ApiQueryCategoryInfo\execute(), ApiQueryFilearchive\execute(), ApiQueryPageProps\execute(), ApiQueryBlocks\execute(), ApiQueryContributions\execute(), ApiQueryLogEvents\execute(), ApiQueryPagePropNames\execute(), ApiQueryTags\execute(), ApiQueryContributors\execute(), ApiQueryAllUsers\execute(), ApiQueryUsers\execute(), ApiQueryRevisions\execute(), ApiQueryInfo\getDisplayTitle(), ApiQueryInfo\getProtectionInfo(), ApiQueryInfo\getTSIDs(), ApiQueryInfo\getWatchedInfo(), ApiQueryInfo\getWatcherInfo(), ApiQueryImages\run(), ApiQueryIWBacklinks\run(), ApiQueryLangBacklinks\run(), ApiQueryRedirects\run(), ApiQueryProtectedTitles\run(), ApiQueryWatchlistRaw\run(), ApiQueryExtLinksUsage\run(), ApiQueryCategories\run(), ApiQueryCategoryMembers\run(), ApiQueryAllCategories\run(), ApiQueryPagesWithProp\run(), ApiQueryWatchlist\run(), ApiQueryAllPages\run(), ApiQueryLinks\run(), ApiQueryAllImages\run(), ApiQueryAllLinks\run(), ApiQueryRecentChanges\run(), ApiQueryBacklinks\run(), and ApiQueryRandom\runQuery().
ApiQueryBase::selectNamedDB | ( | $name, | |
$db, | |||
$groups | |||
) |
Selects the query database connection with the given name.
See ApiQuery::getNamedDB() for more information
string | $name | Name to assign to the database connection |
int | $db | One of the DB_* constants |
array | $groups | Query groups |
Definition at line 433 of file ApiQueryBase.php.
References $name, and getQuery().
Referenced by ApiQueryContributions\execute(), ApiQueryWatchlistRaw\run(), and ApiQueryWatchlist\run().
|
protected |
Set a query-continue value.
string | $paramName | Parameter name |
string | $paramValue | Parameter value |
Reimplemented in ApiQueryGeneratorBase.
Definition at line 404 of file ApiQueryBase.php.
References ApiResult\ADD_ON_TOP, array(), ApiBase\encodeParamName(), ApiBase\getModuleName(), and ApiBase\getResult().
Referenced by ApiQueryPageProps\addPageProps(), ApiQueryORM\addResults(), ApiQueryTags\doTag(), ApiQueryAllMessages\execute(), ApiQueryLangLinks\execute(), ApiQueryDeletedrevs\execute(), ApiQueryExternalLinks\execute(), ApiQueryCategoryInfo\execute(), ApiQueryIWLinks\execute(), ApiQueryFilearchive\execute(), ApiQueryBlocks\execute(), ApiQueryContributions\execute(), ApiQueryLogEvents\execute(), ApiQueryPagePropNames\execute(), ApiQueryImageInfo\execute(), ApiQueryAllUsers\execute(), ApiQueryContributors\execute(), ApiQueryUsers\execute(), ApiQueryRevisions\execute(), and ApiQueryInfo\execute().
ApiQueryBase::showHiddenUsersAddBlockInfo | ( | $showBlockInfo | ) |
Filters hidden users (where the user doesn't have the right to view them) Also adds relevant block information.
bool | $showBlockInfo |
Definition at line 566 of file ApiQueryBase.php.
References addFields(), addJoinConds(), addTables(), addWhere(), array(), and ContextSource\getUser().
Referenced by ApiQueryAllUsers\execute(), and ApiQueryUsers\execute().
ApiQueryBase::titlePartToKey | ( | $titlePart, | |
$defaultNamespace = NS_MAIN |
|||
) |
An alternative to titleToKey() that doesn't trim trailing spaces, and does not mangle the input if starts with something that looks like a namespace.
It is advisable to pass the namespace parameter in order to handle per-namespace capitalization settings.
string | $titlePart | Title part with spaces |
$defaultNamespace | int Namespace to assume |
Definition at line 491 of file ApiQueryBase.php.
References $t, array(), ApiBase\dieUsageMsg(), and Title\makeTitleSafe().
Referenced by ApiQueryDeletedrevs\execute(), ApiQueryFilearchive\execute(), ApiQueryAllCategories\run(), ApiQueryAllPages\run(), ApiQueryAllImages\run(), and ApiQueryAllLinks\run().
ApiQueryBase::titleToKey | ( | $title | ) |
Convert a title to a DB key.
string | $title | Page title with spaces |
Definition at line 450 of file ApiQueryBase.php.
References $t, $title, array(), ApiBase\dieUsageMsg(), and Title\newFromText().
ApiQueryBase::userCanSeeRevDel | ( | ) |
Check whether the current user has permission to view revision-deleted fields.
Definition at line 618 of file ApiQueryBase.php.
References ContextSource\getUser().
Referenced by ApiQueryLogEvents\getCacheMode(), ApiQueryImageInfo\getCacheMode(), ApiQueryRecentChanges\getCacheMode(), and ApiQueryRevisions\getCacheMode().
ApiQueryBase::validateSha1Base36Hash | ( | $hash | ) |
$hash | string |
Definition at line 596 of file ApiQueryBase.php.
References $hash.
Referenced by ApiQueryFilearchive\execute(), and ApiQueryAllImages\run().
ApiQueryBase::validateSha1Hash | ( | $hash | ) |
$hash | string |
Definition at line 588 of file ApiQueryBase.php.
References $hash.
Referenced by ApiQueryFilearchive\execute(), and ApiQueryAllImages\run().
ApiQueryBase::$fields |
Definition at line 36 of file ApiQueryBase.php.
Referenced by ApiQueryORM\getConditions(), and select().
ApiQueryBase::$join_conds |
Definition at line 36 of file ApiQueryBase.php.
Referenced by addJoinConds(), and select().
ApiQueryBase::$mDb |
Definition at line 36 of file ApiQueryBase.php.
Referenced by getDB().
|
private |
Definition at line 36 of file ApiQueryBase.php.
Referenced by getQuery().
ApiQueryBase::$options |
Definition at line 36 of file ApiQueryBase.php.
Referenced by select().
ApiQueryBase::$tables |
Definition at line 36 of file ApiQueryBase.php.
Referenced by addTables(), ApiQueryContributions\prepareQuery(), and select().
ApiQueryBase::$where |
Definition at line 36 of file ApiQueryBase.php.
Referenced by ApiQueryDeletedrevs\execute(), and select().