MediaWiki REL1_33
|
A query action to enumerate revisions of a given page, or show top revisions of multiple pages. More...
Public Member Functions | |
__construct (ApiQuery $query, $moduleName) | |
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. | |
getCacheMode ( $params) | |
Get the cache mode for the data generated by this module. | |
getHelpUrls () | |
Return links to more detailed help pages about the module. | |
Public Member Functions inherited from ApiQueryRevisionsBase | |
execute () | |
Evaluates the parameters, performs the requested query, and sets up the result. | |
executeGenerator ( $resultPageSet) | |
Execute this module as a generator. | |
Public Member Functions inherited from ApiQueryGeneratorBase | |
encodeParamName ( $paramName) | |
Overrides ApiBase to prepend 'g' to every generator parameter. | |
isInGeneratorMode () | |
Indicate whether the module is in generator mode. | |
setGeneratorMode (ApiPageSet $generatorPageSet) | |
Switch this module to generator mode. | |
Public Member Functions inherited from ApiQueryBase | |
__construct (ApiQuery $queryModule, $moduleName, $paramPrefix='') | |
requestExtraData ( $pageSet) | |
Override this method to request extra fields from the pageSet using $pageSet->requestField('fieldName') | |
getQuery () | |
Get the main Query module. | |
getParent () | |
@inheritDoc | |
selectNamedDB ( $name, $db, $groups) | |
Selects the query database connection with the given name. | |
prepareUrlQuerySearchString ( $query=null, $protocol=null) | |
showHiddenUsersAddBlockInfo ( $showBlockInfo) | |
Filters hidden users (where the user doesn't have the right to view them) Also adds relevant block information. | |
titlePartToKey ( $titlePart, $namespace=NS_MAIN) | |
Convert an input title or title prefix into a dbkey. | |
prefixedTitlePartToKey ( $titlePart, $defaultNamespace=NS_MAIN) | |
Convert an input title or title prefix into a namespace constant and dbkey. | |
validateSha1Hash ( $hash) | |
validateSha1Base36Hash ( $hash) | |
userCanSeeRevDel () | |
Check whether the current user has permission to view revision-deleted fields. | |
Public Member Functions inherited from ApiBase | |
__construct (ApiMain $mainModule, $moduleName, $modulePrefix='') | |
getModuleManager () | |
Get the module manager, or null if this module has no sub-modules. | |
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. | |
shouldCheckMaxlag () | |
Indicates if this module needs maxlag to be checked. | |
isReadMode () | |
Indicates whether this module requires read rights. | |
isWriteMode () | |
Indicates whether this module requires write mode. | |
mustBePosted () | |
Indicates whether this module must be called with a POST request. | |
isDeprecated () | |
Indicates whether this module is deprecated. | |
isInternal () | |
Indicates whether this module is "internal" Internal API modules are not (yet) intended for 3rd party use and may be unstable. | |
needsToken () | |
Returns the token type this module requires in order to execute. | |
getConditionalRequestData ( $condition) | |
Returns data for HTTP conditional request mechanisms. | |
getModuleName () | |
Get the name of the module being executed by this instance. | |
getModulePrefix () | |
Get parameter prefix (usually two letters or an empty string). | |
getMain () | |
Get the main module. | |
isMain () | |
Returns true if this module is the main module ($this === $this->mMainModule), false otherwise. | |
lacksSameOriginSecurity () | |
Returns true if the current request breaks the same-origin policy. | |
getModulePath () | |
Get the path to this module. | |
getModuleFromPath ( $path) | |
Get a module from its module path. | |
getResult () | |
Get the result object. | |
getErrorFormatter () | |
Get the error formatter. | |
getContinuationManager () | |
Get the continuation manager. | |
setContinuationManager (ApiContinuationManager $manager=null) | |
Set the continuation manager. | |
dynamicParameterDocumentation () | |
Indicate if the module supports dynamically-determined parameters that cannot be included in self::getAllowedParams(). | |
extractRequestParams ( $options=[]) | |
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. | |
requireOnlyOneParameter ( $params, $required) | |
Die if none or more than one of a certain set of parameters is set and not false. | |
requireMaxOneParameter ( $params, $required) | |
Die if more than one of a certain set of parameters is set and not false. | |
requireAtLeastOneParameter ( $params, $required) | |
Die if none of a certain set of parameters is set and not false. | |
requirePostedParameters ( $params, $prefix='prefix') | |
Die if any of the specified parameters were found in the query part of the URL rather than the post body. | |
getTitleOrPageId ( $params, $load=false) | |
Get a WikiPage object from a title or pageid param, if possible. | |
getTitleFromTitleOrPageId ( $params) | |
Get a Title object from a title or pageid param, if possible. | |
validateToken ( $token, array $params) | |
Validate the supplied token. | |
getWatchlistUser ( $params) | |
Gets the user for whom to get the watchlist. | |
errorArrayToStatus (array $errors, User $user=null) | |
Turn an array of message keys or key+param arrays into a Status. | |
addBlockInfoToStatus (StatusValue $status, User $user=null) | |
Add block info to block messages in a Status. | |
addWarning ( $msg, $code=null, $data=null) | |
Add a warning for this module. | |
addDeprecation ( $msg, $feature, $data=[]) | |
Add a deprecation warning for this module. | |
addError ( $msg, $code=null, $data=null) | |
Add an error for this module without aborting. | |
addMessagesFromStatus (StatusValue $status, $types=[ 'warning', 'error'], array $filter=[]) | |
Add warnings and/or errors from a Status. | |
dieWithError ( $msg, $code=null, $data=null, $httpCode=null) | |
Abort execution with an error. | |
dieWithException ( $exception, array $options=[]) | |
Abort execution with an error derived from an exception. | |
dieBlocked (Block $block) | |
Throw an ApiUsageException, which will (if uncaught) call the main module's error handler and die with an error message including block info. | |
dieStatus (StatusValue $status) | |
Throw an ApiUsageException based on the Status object. | |
dieReadOnly () | |
Helper function for readonly errors. | |
checkUserRightsAny ( $rights, $user=null) | |
Helper function for permission-denied errors. | |
checkTitleUserPermissions (Title $title, $actions, $options=[]) | |
Helper function for permission-denied errors. | |
dieWithErrorOrDebug ( $msg, $code=null, $data=null, $httpCode=null) | |
Will only set a warning instead of failing if the global $wgDebugAPI is set to true. | |
logFeatureUsage ( $feature) | |
Write logging information for API features to a debug log, for usage analysis. | |
getFinalSummary () | |
Get final module summary. | |
getFinalDescription () | |
Get final module description, after hooks have had a chance to tweak it as needed. | |
getFinalParams ( $flags=0) | |
Get final list of parameters, after hooks have had a chance to tweak it as needed. | |
getFinalParamDescription () | |
Get final parameter descriptions, after hooks have had a chance to tweak it as needed. | |
modifyHelp (array &$help, array $options, array &$tocData) | |
Called from ApiHelp before the pieces are joined together and returned. | |
Public Member Functions inherited from ContextSource | |
canUseWikiPage () | |
Check whether a WikiPage object can be get with getWikiPage(). | |
exportSession () | |
Export the resolved user IP, HTTP headers, user ID, and session ID. | |
getConfig () | |
getContext () | |
Get the base IContextSource object. | |
getLanguage () | |
getOutput () | |
getRequest () | |
getSkin () | |
getStats () | |
getTiming () | |
getTitle () | |
getUser () | |
getWikiPage () | |
Get the WikiPage object. | |
msg ( $key) | |
Get a Message object with context set Parameters are the same as wfMessage() | |
setContext (IContextSource $context) | |
Static Public Member Functions | |
static | getRollbackToken ( $pageid, $title, $rev) |
Static Public Member Functions inherited from ApiQueryBase | |
static | addTitleInfo (&$arr, $title, $prefix='') |
Add information (title and namespace) about a Title object to a result array. | |
Static Public Member Functions inherited from ApiBase | |
static | makeMessage ( $msg, IContextSource $context, array $params=null) |
Create a Message from a string or array. | |
static | truncateArray (&$arr, $limit) |
Truncate an array to a certain length. | |
Protected Member Functions | |
getExamplesMessages () | |
Returns usage examples for this module. | |
getTokenFunctions () | |
run (ApiPageSet $resultPageSet=null) | |
Protected Member Functions inherited from ApiQueryRevisionsBase | |
extractRevisionInfo (RevisionRecord $revision, $row) | |
Extract information from the RevisionRecord. | |
parseParameters ( $params) | |
Parse the parameters into the various instance fields. | |
Protected Member Functions inherited from ApiQueryGeneratorBase | |
getHelpFlags () | |
@inheritDoc | |
getPageSet () | |
Get the PageSet object to work on. | |
setContinueEnumParameter ( $paramName, $paramValue) | |
Overridden to set the generator param if in generator mode. | |
Protected Member Functions inherited from ApiQueryBase | |
getDB () | |
Get the Query database connection (read-only) | |
resetQueryParams () | |
Blank the internal arrays with query parameters. | |
addTables ( $tables, $alias=null) | |
Add a set of tables to the internal array. | |
addJoinConds ( $join_conds) | |
Add a set of JOIN conditions to the internal array. | |
addFields ( $value) | |
Add a set of fields to select to the internal array. | |
addFieldsIf ( $value, $condition) | |
Same as addFields(), but add the fields only if a condition is met. | |
addWhere ( $value) | |
Add a set of WHERE clauses to the internal array. | |
addWhereIf ( $value, $condition) | |
Same as addWhere(), but add the WHERE clauses only if a condition is met. | |
addWhereFld ( $field, $value) | |
Equivalent to addWhere(array($field => $value)) | |
addWhereIDsFld ( $table, $field, $ids) | |
Like addWhereFld for an integer list of IDs. | |
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. | |
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. | |
addOption ( $name, $value=null) | |
Add an option such as LIMIT or USE INDEX. | |
select ( $method, $extraQuery=[], array &$hookData=null) | |
Execute a SELECT query based on the values in the internal arrays. | |
processRow ( $row, array &$data, array &$hookData) | |
Call the ApiQueryBaseProcessRow hook. | |
addPageSubItems ( $pageId, $data) | |
Add a sub-element under the page element with the given page ID. | |
addPageSubItem ( $pageId, $item, $elemname=null) | |
Same as addPageSubItems(), but one element of $data at a time. | |
Protected Member Functions inherited from ApiBase | |
getWebUITokenSalt (array $params) | |
Fetch the salt used in the Web UI corresponding to this module. | |
getParameter ( $paramName, $parseLimit=true) | |
Get a value for the given parameter. | |
getWatchlistValue ( $watchlist, $titleObj, $userOption=null) | |
Return true if we're to watch the page, false if not, null if no change. | |
getParameterFromSettings ( $paramName, $paramSettings, $parseLimit) | |
Using the settings determine the value for the given parameter. | |
handleParamNormalization ( $paramName, $value, $rawValue) | |
Handle when a parameter was Unicode-normalized. | |
explodeMultiValue ( $value, $limit) | |
Split a multi-valued parameter string, like explode() | |
parseMultiValue ( $valueName, $value, $allowMultiple, $allowedValues, $allSpecifier=null, $limit1=null, $limit2=null) | |
Return an array of values that were given in a 'a|b|c' notation, after it optionally validates them against the list allowed values. | |
validateLimit ( $paramName, &$value, $min, $max, $botMax=null, $enforceLimits=false) | |
Validate the value against the minimum and user/bot maximum limits. | |
validateTimestamp ( $value, $encParamName) | |
Validate and normalize parameters of type 'timestamp'. | |
setWatch ( $watch, $titleObj, $userOption=null) | |
Set a watch (or unwatch) based the based on a watchlist parameter. | |
useTransactionalTimeLimit () | |
Call wfTransactionalTimeLimit() if this request was POSTed. | |
filterIDs ( $fields, array $ids) | |
Filter out-of-range values from a list of positive integer IDs. | |
dieContinueUsageIf ( $condition) | |
Die with the 'badcontinue' error. | |
getSummaryMessage () | |
Return the summary message. | |
getExtendedDescription () | |
Return the extended help text message. | |
getModuleSourceInfo () | |
Returns information about the source of this module, if known. | |
getDescription () | |
Returns the description string for this module. | |
getParamDescription () | |
Returns an array of parameter descriptions. | |
getExamples () | |
Returns usage examples for this module. | |
getDescriptionMessage () | |
Return the description message. | |
Private Attributes | |
$token = null | |
$tokenFunctions | |
Additional Inherited Members | |
Public Attributes inherited from ApiQueryRevisionsBase | |
const | IS_DELETED = 1 |
const | CANNOT_VIEW = 2 |
Public Attributes inherited from ApiBase | |
const | ALL_DEFAULT_STRING = '*' |
const | GET_VALUES_FOR_HELP = 1 |
getAllowedParams() flag: When set, the result could take longer to generate, but should be more thorough. | |
const | LIMIT_BIG1 = 500 |
Fast query, standard limit. | |
const | LIMIT_BIG2 = 5000 |
Fast query, apihighlimits limit. | |
const | LIMIT_SML1 = 50 |
Slow query, standard limit. | |
const | LIMIT_SML2 = 500 |
Slow query, apihighlimits limit. | |
const | PARAM_DFLT = 0 |
(null|boolean|integer|string) Default value of the parameter. | |
const | PARAM_ISMULTI = 1 |
(boolean) Accept multiple pipe-separated values for this parameter (e.g. | |
const | PARAM_TYPE = 2 |
(string|string[]) Either an array of allowed value strings, or a string type as described below. | |
const | PARAM_MAX = 3 |
(integer) Max value allowed for the parameter, for PARAM_TYPE 'integer' and 'limit'. | |
const | PARAM_MAX2 = 4 |
(integer) Max value allowed for the parameter for users with the apihighlimits right, for PARAM_TYPE 'limit'. | |
const | PARAM_MIN = 5 |
(integer) Lowest value allowed for the parameter, for PARAM_TYPE 'integer' and 'limit'. | |
const | PARAM_ALLOW_DUPLICATES = 6 |
(boolean) Allow the same value to be set more than once when PARAM_ISMULTI is true? | |
const | PARAM_DEPRECATED = 7 |
(boolean) Is the parameter deprecated (will show a warning)? | |
const | PARAM_REQUIRED = 8 |
(boolean) Is the parameter required? | |
const | PARAM_RANGE_ENFORCE = 9 |
(boolean) For PARAM_TYPE 'integer', enforce PARAM_MIN and PARAM_MAX? | |
const | PARAM_HELP_MSG = 10 |
(string|array|Message) Specify an alternative i18n documentation message for this parameter. | |
const | PARAM_HELP_MSG_APPEND = 11 |
((string|array|Message)[]) Specify additional i18n messages to append to the normal message for this parameter. | |
const | PARAM_HELP_MSG_INFO = 12 |
(array) Specify additional information tags for the parameter. | |
const | PARAM_VALUE_LINKS = 13 |
(string[]) When PARAM_TYPE is an array, this may be an array mapping those values to page titles which will be linked in the help. | |
const | PARAM_HELP_MSG_PER_VALUE = 14 |
((string|array|Message)[]) When PARAM_TYPE is an array, this is an array mapping those values to $msg for ApiBase::makeMessage(). | |
const | PARAM_SUBMODULE_MAP = 15 |
(string[]) When PARAM_TYPE is 'submodule', map parameter values to submodule paths. | |
const | PARAM_SUBMODULE_PARAM_PREFIX = 16 |
(string) When PARAM_TYPE is 'submodule', used to indicate the 'g' prefix added by ApiQueryGeneratorBase (and similar if anything else ever does that). | |
const | PARAM_ALL = 17 |
(boolean|string) When PARAM_TYPE has a defined set of values and PARAM_ISMULTI is true, this allows for an asterisk ('*') to be passed in place of a pipe-separated list of every possible value. | |
const | PARAM_EXTRA_NAMESPACES = 18 |
(int[]) When PARAM_TYPE is 'namespace', include these as additional possible values. | |
const | PARAM_SENSITIVE = 19 |
(boolean) Is the parameter sensitive? Note 'password'-type fields are always sensitive regardless of the value of this field. | |
const | PARAM_DEPRECATED_VALUES = 20 |
(array) When PARAM_TYPE is an array, this indicates which of the values are deprecated. | |
const | PARAM_ISMULTI_LIMIT1 = 21 |
(integer) Maximum number of values, for normal users. | |
const | PARAM_ISMULTI_LIMIT2 = 22 |
(integer) Maximum number of values, for users with the apihighimits right. | |
const | PARAM_MAX_BYTES = 23 |
(integer) Maximum length of a string in bytes (in UTF-8 encoding). | |
const | PARAM_MAX_CHARS = 24 |
(integer) Maximum length of a string in characters (unicode codepoints). | |
const | PARAM_TEMPLATE_VARS = 25 |
(array) Indicate that this is a templated parameter, and specify replacements. | |
Static Protected Member Functions inherited from ApiBase | |
static | dieDebug ( $method, $message) |
Internal code errors should be reported with this method. | |
Protected Attributes inherited from ApiQueryRevisionsBase | |
$contentFormat | |
$diffto | |
$difftotext | |
$difftotextpst | |
$expandTemplates | |
$fetchContent | |
$fld_comment = false | |
$fld_content = false | |
$fld_contentmodel = false | |
$fld_flags = false | |
$fld_ids = false | |
$fld_parsedcomment = false | |
$fld_parsetree = false | |
$fld_roles = false | |
$fld_sha1 = false | |
$fld_size = false | |
$fld_slotsha1 = false | |
$fld_slotsize = false | |
$fld_tags = false | |
$fld_timestamp = false | |
$fld_user = false | |
$fld_userid = false | |
$generateXML | |
$limit | |
$needSlots | |
$parseContent | |
$section | |
$setParsedLimit = true | |
$slotRoles = null | |
A query action to enumerate revisions of a given page, or show top revisions of multiple pages.
Various pieces of information may be shown - flags, comments, and the actual wiki markup of the rev. In the enumeration mode, ranges of revisions may be requested and filtered.
Definition at line 35 of file ApiQueryRevisions.php.
ApiQueryRevisions::__construct | ( | ApiQuery | $query, |
$moduleName ) |
Definition at line 39 of file ApiQueryRevisions.php.
References $query.
ApiQueryRevisions::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.
Some derived classes may choose to handle an integer $flags parameter in the overriding methods. Callers of this method can pass zero or more OR-ed flags like GET_VALUES_FOR_HELP.
Reimplemented from ApiQueryRevisionsBase.
Definition at line 465 of file ApiQueryRevisions.php.
References $ret, and(), getTokenFunctions(), ApiBase\PARAM_DEPRECATED, ApiBase\PARAM_DFLT, ApiBase\PARAM_HELP_MSG, ApiBase\PARAM_HELP_MSG_INFO, ApiBase\PARAM_ISMULTI, ApiBase\PARAM_TYPE, and true.
ApiQueryRevisions::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.
array | $params |
Reimplemented from ApiQueryRevisionsBase.
Definition at line 458 of file ApiQueryRevisions.php.
|
protected |
Returns usage examples for this module.
Return value has query strings as keys, with values being either strings (message key), arrays (message key + parameter), or Message objects.
Do not call this base class implementation when overriding this method.
Reimplemented from ApiBase.
Definition at line 516 of file ApiQueryRevisions.php.
ApiQueryRevisions::getHelpUrls | ( | ) |
Return links to more detailed help pages about the module.
Reimplemented from ApiBase.
Definition at line 539 of file ApiQueryRevisions.php.
|
static |
Definition at line 77 of file ApiQueryRevisions.php.
References and().
|
protected |
Definition at line 46 of file ApiQueryRevisions.php.
References $tokenFunctions, and(), class, and ApiBase\lacksSameOriginSecurity().
Referenced by getAllowedParams(), and run().
|
protected |
ApiPageSet | null | $resultPageSet |
Reimplemented from ApiQueryRevisionsBase.
Definition at line 86 of file ApiQueryRevisions.php.
References $params, $res, $rev, $revQuery, $sort, $t, $titles, $tokenFunctions, $wgActorTableSchemaMigrationStage, ApiQueryBase\addFields(), ApiQueryBase\addJoinConds(), ApiQueryBase\addOption(), ApiQueryBase\addPageSubItem(), ApiQueryBase\addTables(), ApiQueryBase\addTimestampWhereRange(), ApiBase\addWarning(), ApiQueryBase\addWhere(), ApiQueryBase\addWhereFld(), and(), ApiMessage\create(), ApiBase\dieContinueUsageIf(), ApiBase\dieDebug(), ApiBase\dieStatus(), ApiBase\dieWithError(), ApiQueryGeneratorBase\encodeParamName(), ApiBase\extractRequestParams(), ApiQueryRevisionsBase\extractRevisionInfo(), ApiQueryBase\getDB(), ApiBase\getModulePrefix(), ApiQueryGeneratorBase\getPageSet(), ApiBase\getParameter(), getTokenFunctions(), ContextSource\getUser(), ChangeTags\makeTagSummarySubquery(), User\newFromName(), null, ApiQueryRevisionsBase\parseParameters(), ApiQueryBase\processRow(), ApiBase\requireMaxOneParameter(), SCHEMA_COMPAT_READ_NEW, select(), ApiQueryGeneratorBase\setContinueEnumParameter(), and wfEscapeWikiText().
|
private |
Definition at line 37 of file ApiQueryRevisions.php.
|
private |
Definition at line 43 of file ApiQueryRevisions.php.
Referenced by getTokenFunctions(), and run().