From 2e8ec6daf0f347755681cee59d6f98ba12a93eb0 Mon Sep 17 00:00:00 2001 From: Bryan Tong Minh Date: Sun, 3 Feb 2008 19:29:59 +0000 Subject: [PATCH] Added siprop=namespacealiases to meta=siteinfo --- RELEASE-NOTES | 1 + includes/api/ApiQuerySiteinfo.php | 23 ++++++++++++++++++++++- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/RELEASE-NOTES b/RELEASE-NOTES index 45b6d0ac8d..1ffcaa9090 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -489,6 +489,7 @@ Full API documentation is available at http://www.mediawiki.org/wiki/API * Added list=random which fetches a list of random pages * Added page parameter to action=parse to facilitate parsing of existing pages * Added uiprop=ratelimits to meta=userinfo +* Added siprop=namespacealiases to meta=siteinfo === Languages updated in 1.12 === diff --git a/includes/api/ApiQuerySiteinfo.php b/includes/api/ApiQuerySiteinfo.php index e8ca0d2d9f..6848ab69cf 100644 --- a/includes/api/ApiQuerySiteinfo.php +++ b/includes/api/ApiQuerySiteinfo.php @@ -53,6 +53,9 @@ class ApiQuerySiteinfo extends ApiQueryBase { case 'namespaces' : $this->appendNamespaces($p); break; + case 'namespacealiases' : + $this->appendNamespaceAliases($p); + break; case 'interwikimap' : $filteriw = isset($params['filteriw']) ? $params['filteriw'] : false; $this->appendInterwikiMap($p, $filteriw); @@ -104,6 +107,22 @@ class ApiQuerySiteinfo extends ApiQueryBase { $this->getResult()->addValue('query', $property, $data); } + protected function appendNamespaceAliases($property) { + global $wgNamespaceAliases; + + $data = array (); + foreach ($wgNamespaceAliases as $title => $ns) { + $item = array ( + 'id' => $ns + ); + ApiResult :: setContent($item, strtr($title, '_', ' ')); + $data[] = $item; + } + + $this->getResult()->setIndexedTagName($data, 'ns'); + $this->getResult()->addValue('query', $property, $data); + } + protected function appendInterwikiMap($property, $filter) { $this->resetQueryParams(); @@ -190,6 +209,7 @@ class ApiQuerySiteinfo extends ApiQueryBase { ApiBase :: PARAM_TYPE => array ( 'general', 'namespaces', + 'namespacealiases', 'interwikimap', 'dbrepllag', 'statistics', @@ -211,6 +231,7 @@ class ApiQuerySiteinfo extends ApiQueryBase { 'Which sysinfo properties to get:', ' "general" - Overall system information', ' "namespaces" - List of registered namespaces (localized)', + ' "namespacealiases" - List of registered namespace aliases', ' "statistics" - Returns site statistics', ' "interwikimap" - Returns interwiki map (optionally filtered)', ' "dbrepllag" - Returns database server with the highest replication lag', @@ -226,7 +247,7 @@ class ApiQuerySiteinfo extends ApiQueryBase { protected function getExamples() { return array( - 'api.php?action=query&meta=siteinfo&siprop=general|namespaces|statistics', + 'api.php?action=query&meta=siteinfo&siprop=general|namespaces|namespacealiases|statistics', 'api.php?action=query&meta=siteinfo&siprop=interwikimap&sifilteriw=local', 'api.php?action=query&meta=siteinfo&siprop=dbrepllag&sishowalldb', ); -- 2.20.1