(r54511) Replace global array with hook
authorJan Luca Naumann <jan@users.mediawiki.org>
Thu, 6 Aug 2009 13:40:13 +0000 (13:40 +0000)
committerJan Luca Naumann <jan@users.mediawiki.org>
Thu, 6 Aug 2009 13:40:13 +0000 (13:40 +0000)
docs/hooks.txt
includes/specials/SpecialStatistics.php

index 7ab916d..5ec31d9 100644 (file)
@@ -1394,6 +1394,10 @@ $term: string of search term
 no matches
 $term: string of search term
 
+'SpecialStatsAddExtra': add extra statistic at the end of Special:Statistics
+&$extraStats: Array to save the new stats 
+              ( $extraStats['<name of statistic>'] => <value>; )
+
 'SpecialUploadComplete': Called after successfully uploading a file from 
 Special:Upload
 $form: The UploadForm object
index 81542b3..66f31dc 100644 (file)
@@ -78,7 +78,10 @@ class SpecialStatistics extends SpecialPage {
                }
                
                # Statistic - other
-               $text .= $this->getOtherStats();
+               $extraStats = array();
+               if( wfRunHooks( 'SpecialStatsAddExtra', array( &$extraStats ) ) ) {
+                       $text .= $this->getOtherStats( $extraStats );
+               }
 
                $text .= Xml::closeElement( 'table' );
 
@@ -262,18 +265,14 @@ class SpecialStatistics extends SpecialPage {
                return $text;
        }
        
-       private function getOtherStats() {
+       private function getOtherStats( $stats ) {
                global $wgLang, $wgAllowStatsOther, $wgStatsOther;
                
-               if( !$wgAllowStatsOther ) return;
-               
-               if ( count( $wgStatsOther ) < 1 ) return;
-               
                $return = Xml::openElement( 'tr' ) .
                        Xml::tags( 'th', array( 'colspan' => '2' ), wfMsgExt( 'statistics-header-hooks', array( 'parseinline' ) ) ) .
                        Xml::closeElement( 'tr' );
                        
-               foreach( $wgStatsOther as $name => $number ) {
+               foreach( $stats as $name => $number ) {
                        $name = htmlspecialchars( $name );
                        $number = htmlspecialchars( $number );