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);
$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();
ApiBase :: PARAM_TYPE => array (
'general',
'namespaces',
+ 'namespacealiases',
'interwikimap',
'dbrepllag',
'statistics',
'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',
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',
);