From ea941f7843d5c40ea3fefe0128026ce0a34c1c75 Mon Sep 17 00:00:00 2001 From: Brad Jorsch Date: Wed, 20 Nov 2013 14:38:49 -0500 Subject: [PATCH] Add additional information to FileRepo::getInfo The API's meta=filerepoinfo could use some additional information, most pressingly a way to determine the MW API endpoint of the associated repo. Since FileRepo already has scriptDirUrl (to which "/api.php" could be appended), let's just add that. And for good measure, we may as well include various other bits of information that people might find useful. Change-Id: I6d5aa6cf44ef1d9bdfd9b2f36f184e5fdc0900dd --- RELEASE-NOTES-1.23 | 2 ++ includes/filerepo/FileRepo.php | 14 +++++++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/RELEASE-NOTES-1.23 b/RELEASE-NOTES-1.23 index e2c0670dc4..88da8c2964 100644 --- a/RELEASE-NOTES-1.23 +++ b/RELEASE-NOTES-1.23 @@ -61,6 +61,8 @@ production. === API changes in 1.23 === * (bug 54884) action=parse&prop=categories now indicates hidden and missing categories. +* action=query&meta=filerepoinfo now returns additional information for each + repo. === Languages updated in 1.23=== diff --git a/includes/filerepo/FileRepo.php b/includes/filerepo/FileRepo.php index 1195d5f876..62e6388263 100644 --- a/includes/filerepo/FileRepo.php +++ b/includes/filerepo/FileRepo.php @@ -1725,12 +1725,24 @@ class FileRepo { * @since 1.22 */ public function getInfo() { - return array( + $ret = array( 'name' => $this->getName(), 'displayname' => $this->getDisplayName(), 'rootUrl' => $this->getRootUrl(), 'local' => $this->isLocal(), ); + + $optionalSettings = array( + 'url', 'thumbUrl', 'initialCapital', 'descBaseUrl', 'scriptDirUrl', 'articleUrl', + 'fetchDescription', 'descriptionCacheExpiry', 'scriptExtension' + ); + foreach ( $optionalSettings as $k ) { + if ( isset( $this->$k ) ) { + $ret[$k] = $this->$k; + } + } + + return $ret; } } -- 2.20.1