API: Added site statistics (siprop=statistics for meta=siteinfo)
authorYuri Astrakhan <yurik@users.mediawiki.org>
Thu, 9 Aug 2007 12:39:41 +0000 (12:39 +0000)
committerYuri Astrakhan <yurik@users.mediawiki.org>
Thu, 9 Aug 2007 12:39:41 +0000 (12:39 +0000)
RELEASE-NOTES
includes/api/ApiQuerySiteinfo.php

index 799f2c3..1ff18dd 100644 (file)
@@ -420,6 +420,9 @@ Full API documentation is available at http://www.mediawiki.org/wiki/API
 * Added full text search in titles and content (list=search)
 * (bug 10684) Expanded list=allusers functionality
 * Possible breaking change: prop=revisions no longer includes pageid for rvprop=ids
+* Added rvprop=size to prop=revisions (The size will not be shown if it is NULL in the database)
+* list=allpages now allows to filter by article min/max size and protection status
+* Added site statistics (siprop=statistics for meta=siteinfo)
 
 == Maintenance script changes since 1.10 ==
 
index 9d1371a..283275a 100644 (file)
@@ -60,6 +60,9 @@ class ApiQuerySiteinfo extends ApiQueryBase {
                                case 'dbrepllag' :
                                        $this->appendDbReplLagInfo($p, $params['showalldb']);
                                        break;
+                               case 'statistics' :
+                                       $this->appendStatistics($p);
+                                       break;
                        }
                }
        }
@@ -160,6 +163,19 @@ class ApiQuerySiteinfo extends ApiQueryBase {
                $result->addValue('query', $property, $data);
        }       
 
+       protected function appendStatistics($property) {
+               $data = array ();
+               $data['pages'] = intval(SiteStats::pages());
+               $data['articles'] = intval(SiteStats::articles());
+               $data['views'] = intval(SiteStats::views());
+               $data['edits'] = intval(SiteStats::edits());
+               $data['images'] = intval(SiteStats::images());
+               $data['users'] = intval(SiteStats::users());
+               $data['admins'] = intval(SiteStats::admins());
+               $data['jobs'] = intval(SiteStats::jobs());
+               $this->getResult()->addValue('query', $property, $data);
+       }       
+       
        protected function getAllowedParams() {
                return array (
                
@@ -171,6 +187,7 @@ class ApiQuerySiteinfo extends ApiQueryBase {
                                        'namespaces',
                                        'interwikimap',
                                        'dbrepllag',
+                                       'statistics',
                                )),
 
                        'filteriw' => array (