33 parent::__construct(
$query, $moduleName,
'fri' );
38 $repoGroup->initialiseRepos();
47 $props = array_flip(
$params[
'prop'] );
52 $foreignTargets = $conf->get(
'ForeignUploadTargets' );
54 $repoGroup->forEachForeignRepo(
function ( $repo ) use ( &$repos, $props, $foreignTargets ) {
55 $repoProps = $repo->getInfo();
56 $repoProps[
'canUpload'] = in_array( $repoProps[
'name'], $foreignTargets );
58 $repos[] = array_intersect_key( $repoProps, $props );
61 $localInfo = $repoGroup->getLocalRepo()->getInfo();
62 $localInfo[
'canUpload'] = $conf->get(
'EnableUploads' );
63 $repos[] = array_intersect_key( $localInfo, $props );
69 $result->addValue( [
'query' ],
'repos', $repos );
92 $repoGroup->forEachForeignRepo(
function ( $repo ) use ( &$props ) {
93 $props = array_merge( $props, array_keys( $repo->getInfo() ) );
96 $propValues = array_values( array_unique( array_merge(
98 array_keys( $repoGroup->getLocalRepo()->getInfo() )
101 $propValues[] =
'canUpload';
108 'action=query&meta=filerepoinfo&friprop=apiurl|name|displayname'
109 =>
'apihelp-query+filerepoinfo-example-simple',
114 return 'https://www.mediawiki.org/wiki/Special:MyLanguage/API:Filerepoinfo';
const PARAM_TYPE
(string|string[]) Either an array of allowed value strings, or a string type as described below.
const PARAM_DFLT
(null|boolean|integer|string) Default value of the parameter.
extractRequestParams( $parseLimit=true)
Using getAllowedParams(), this function makes an array of the values provided by the user,...
getResult()
Get the result object.
const PARAM_ISMULTI
(boolean) Accept multiple pipe-separated values for this parameter (e.g.
This is a base class for all Query modules.
A query action to return meta information about the foreign file repos configured on the wiki.
execute()
Evaluates the parameters, performs the requested query, and sets up the result.
getAllowedParams()
Returns an array of allowed parameters (parameter name) => (default value) or (parameter name) => (ar...
getExamplesMessages()
Returns usage examples for this module.
getHelpUrls()
Return links to more detailed help pages about the module.
__construct(ApiQuery $query, $moduleName)
getCacheMode( $params)
Get the cache mode for the data generated by this module.
getInitialisedRepoGroup()
This is the main query class.
static setArrayType(array &$arr, $type, $kvpKeyName=null)
Set the array data type.
static setArrayTypeRecursive(array &$arr, $type, $kvpKeyName=null)
Set the array data type recursively.
static setIndexedTagName(array &$arr, $tag)
Set the tag name for numeric-keyed values in XML format.
static singleton()
Get a RepoGroup instance.
null for the local wiki Added should default to null in handler for backwards compatibility add a value to it if you want to add a cookie that have to vary cache options can modify $query