http://www.mediawiki.org/wiki/Special:Code/MediaWiki/84631

Revision: 84631
Author:   ialex
Date:     2011-03-23 21:14:01 +0000 (Wed, 23 Mar 2011)
Log Message:
-----------
* Changed extension functions registering parser hooks and tags to use 
ParserFirstCallInit hook
* Removed some useless extension functions
* ParserFistCallInit hook has a parameter, so use it

Modified Paths:
--------------
    trunk/extensions/EmbedVideo/EmbedVideo.hooks.php
    trunk/extensions/SkinPerPage/SkinPerPage.php
    trunk/extensions/SpecialFileList/SpecialFilelist.php
    trunk/extensions/SpecialTalk/SpecialTalk.php
    trunk/extensions/StockCharts/StockCharts.php

Modified: trunk/extensions/EmbedVideo/EmbedVideo.hooks.php
===================================================================
--- trunk/extensions/EmbedVideo/EmbedVideo.hooks.php    2011-03-23 20:52:22 UTC 
(rev 84630)
+++ trunk/extensions/EmbedVideo/EmbedVideo.hooks.php    2011-03-23 21:14:01 UTC 
(rev 84631)
@@ -12,21 +12,15 @@
        /**
         * Sets up parser functions.
         */
-       public static function setup() {
+       public static function setup( $parser ) {
                # Setup parser hooks. ev is the primary hook, evp is supported 
for
                # legacy purposes
-               $prefix = '';
-               EmbedVideo::addMagicWord( $prefix, "ev", 
"EmbedVideo::parserFunction_ev" );
-               EmbedVideo::addMagicWord( $prefix, "evp", 
"EmbedVideo::parserFunction_evp" );
+               $parser->setFunctionHook( 'ev', 'EmbedVideo::parserFunction_ev' 
);
+               $parser->setFunctionHook( 'evp', 
'EmbedVideo::parserFunction_evp' );
 
                return true;
        }
 
-       private static function addMagicWord( $prefix, $word, $function ) {
-               global $wgParser;
-               $wgParser->setFunctionHook( $prefix . $word, $function );
-       }
-
        /**
         ** Adds magic words for parser functions.
         * @param Array $magicWords

Modified: trunk/extensions/SkinPerPage/SkinPerPage.php
===================================================================
--- trunk/extensions/SkinPerPage/SkinPerPage.php        2011-03-23 20:52:22 UTC 
(rev 84630)
+++ trunk/extensions/SkinPerPage/SkinPerPage.php        2011-03-23 21:14:01 UTC 
(rev 84631)
@@ -17,13 +17,13 @@
 
 $wgExtensionMessagesFiles['SkinPerPage'] = dirname( __FILE__ ) . 
"/SkinPerPage.i18n.php";
 
-$wgExtensionFunctions[] = array( 'SkinPerPage', 'setup' );
+$wgHooks['ParserFirstCallInit'][] = 'SkinPerPage::setup';
 $wgHooks['OutputPageParserOutput'][] = 'SkinPerPage::outputHook';
 
 class SkinPerPage {
-       static function setup() {
-               global $wgParser;
-               $wgParser->setHook( 'skin', array( __CLASS__, 'parserHook' ) );
+       static function setup( $parser ) {
+               $parser->setHook( 'skin', array( __CLASS__, 'parserHook' ) );
+               return true;
        }
 
        static function parserHook( $text, $attribs, $parser ) {

Modified: trunk/extensions/SpecialFileList/SpecialFilelist.php
===================================================================
--- trunk/extensions/SpecialFileList/SpecialFilelist.php        2011-03-23 
20:52:22 UTC (rev 84630)
+++ trunk/extensions/SpecialFileList/SpecialFilelist.php        2011-03-23 
21:14:01 UTC (rev 84631)
@@ -11,7 +11,6 @@
  * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 
2.0 or later
  */
 
-$wgExtensionFunctions[] = 'wfSpecialFilelist';
 $wgExtensionCredits['specialpage'][] = array(
        'path' => __FILE__,
        'name' => 'File list',

Modified: trunk/extensions/SpecialTalk/SpecialTalk.php
===================================================================
--- trunk/extensions/SpecialTalk/SpecialTalk.php        2011-03-23 20:52:22 UTC 
(rev 84630)
+++ trunk/extensions/SpecialTalk/SpecialTalk.php        2011-03-23 21:14:01 UTC 
(rev 84631)
@@ -12,7 +12,7 @@
  * @copyright Copyright © 2005, Ævar Arnfjörð Bjarmason
  * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 
2.0 or later
  */
-$wgExtensionFunctions[] = 'wfSpecialTalk';
+
 $wgExtensionCredits['other'][] = array(
        'path' => __FILE__,
        'name' => 'SpecialTalk',
@@ -28,33 +28,22 @@
 // Extension messages.
 $wgExtensionMessagesFiles['SpecialTalk'] =  $dir . 'SpecialTalk.i18n.php';
 
-function wfSpecialTalk() {
-       class SpecialTalk {
-               public function __construct() {
-                       global $wgHooks;
+$wgHooks['SkinTemplateBuildContentActionUrlsAfterSpecialPage'][] = 
'wfSpecialTalkHook';
 
-                       
$wgHooks['SkinTemplateBuildContentActionUrlsAfterSpecialPage'][] = array( 
&$this, 'SpecialTalkHook' );
-               }
+function wfSpecialTalkHook( SkinTemplate &$skin_template, array 
&$content_actions ) {
+       $title = Title::makeTitle( NS_PROJECT_TALK, 
$skin_template->mTitle->getText() );
 
-               public function SpecialTalkHook( SkinTemplate &$skin_template, 
array &$content_actions ) {
-                       $title = Title::makeTitle( NS_PROJECT_TALK, 
$skin_template->mTitle->getText() );
+       $content_actions['talk'] = $skin_template->tabAction(
+               $title,
+               // msg
+               'talk',
+               // selected
+               false,
+               // &query=
+               '',
+               // check existance
+               true
+       );
 
-                       $content_actions['talk'] = $skin_template->tabAction(
-                               $title,
-                               // msg
-                               'talk',
-                               // selected
-                               false,
-                               // &query=
-                               '',
-                               // check existance
-                               true
-                       );
-                       
-                       return true;
-               }
-       }
-
-       // Establish a singleton.
-       new SpecialTalk;
+       return true;
 }

Modified: trunk/extensions/StockCharts/StockCharts.php
===================================================================
--- trunk/extensions/StockCharts/StockCharts.php        2011-03-23 20:52:22 UTC 
(rev 84630)
+++ trunk/extensions/StockCharts/StockCharts.php        2011-03-23 21:14:01 UTC 
(rev 84631)
@@ -17,7 +17,7 @@
  *
  */
 
-$wgExtensionFunctions[] = 'efStockCharts';
+$wgHooks['ParserFirstCallInit'][] = 'efStockChartsSetHooks';
 $wgHooks['LanguageGetMagic'][] = 'efStockChartsMagic';
 
 $wgExtensionCredits['parserhook'][] = array(
@@ -34,11 +34,10 @@
 
 $wgAutoloadClasses['StockCharts'] = dirname( __FILE__ ) . 
'/StockCharts_body.php';
 
-// CHECKME: use $wgHooks['ParserFirstCallInit'] here?
-function efStockCharts() {
-       global $wgParser;
-       $wgParser->setHook( 'stockchart', array( 'StockCharts', 
'renderTagExtension' ) ); // hook for <stockchart ../>
-       $wgParser->setFunctionHook( 'stockchart', array( 'StockCharts', 
'renderParserFunction' ) ); // hook for {{#stockchart ..}}
+function efStockChartsSetHooks( $parser ) {
+       $parser->setHook( 'stockchart', array( 'StockCharts', 
'renderTagExtension' ) ); // hook for <stockchart ../>
+       $parser->setFunctionHook( 'stockchart', array( 'StockCharts', 
'renderParserFunction' ) ); // hook for {{#stockchart ..}}
+       return true;
 }
 
 function efStockChartsMagic( &$magicWords, $langCode ) {


_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to