API: Add nosuchuser message to ApiBase::$messageMap
[lhc/web/wiklou.git] / includes / api / ApiQuerySiteinfo.php
index 9a3d7c4..02c8a7c 100644 (file)
@@ -137,7 +137,7 @@ class ApiQuerySiteinfo extends ApiQueryBase {
                        $offset = 0;
                }
                $data['timezone'] = $tz;
-               $data['timeoffset'] = $offset;
+               $data['timeoffset'] = intval($offset);
 
                return $this->getResult()->addValue( 'query', $property, $data );
        }
@@ -148,7 +148,7 @@ class ApiQuerySiteinfo extends ApiQueryBase {
                foreach( $wgContLang->getFormattedNamespaces() as $ns => $title )
                {
                        $data[$ns] = array(
-                               'id' => $ns
+                               'id' => intval($ns)
                        );
                        ApiResult :: setContent( $data[$ns], $title );
                        $canonical = MWNamespace::getCanonicalName( $ns );
@@ -167,11 +167,16 @@ class ApiQuerySiteinfo extends ApiQueryBase {
        protected function appendNamespaceAliases( $property ) {
                global $wgNamespaceAliases, $wgContLang;
                $wgContLang->load();
-               $aliases = array_merge($wgNamespaceAliases, $wgContLang->namespaceAliases);
+               $aliases = array_merge( $wgNamespaceAliases, $wgContLang->namespaceAliases );
+               $namespaces = $wgContLang->getNamespaces();
                $data = array();
                foreach( $aliases as $title => $ns ) {
+                       if( $namespaces[$ns] == $title ) {
+                               // Don't list duplicates
+                               continue;
+                       }
                        $item = array(
-                               'id' => $ns
+                               'id' => intval($ns)
                        );
                        ApiResult :: setContent( $item, strtr( $title, '_', ' ' ) );
                        $data[] = $item;
@@ -267,7 +272,7 @@ class ApiQuerySiteinfo extends ApiQueryBase {
                        list( $host, $lag ) = wfGetLB()->getMaxLag();
                        $data[] = array(
                                'host' => $wgShowHostnames ? $host : '',
-                               'lag' => $lag
+                               'lag' => intval( $lag )
                        );
                }
 
@@ -277,10 +282,13 @@ class ApiQuerySiteinfo extends ApiQueryBase {
        }
 
        protected function appendStatistics( $property ) {
+               global $wgDisableCounters;
                $data = array();
                $data['pages'] = intval( SiteStats::pages() );
                $data['articles'] = intval( SiteStats::articles() );
-               $data['views'] = intval( SiteStats::views() );
+               if ( !$wgDisableCounters ) {
+                       $data['views'] = intval( SiteStats::views() );
+               }
                $data['edits'] = intval( SiteStats::edits() );
                $data['images'] = intval( SiteStats::images() );
                $data['users'] = intval( SiteStats::users() );