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

Revision: 70045
Author:   platonides
Date:     2010-07-27 21:08:22 +0000 (Tue, 27 Jul 2010)

Log Message:
-----------
Use the parser provided by the hook.

Modified Paths:
--------------
    trunk/extensions/WiktionaryInflection/WiktionaryInflection.php

Modified: trunk/extensions/WiktionaryInflection/WiktionaryInflection.php
===================================================================
--- trunk/extensions/WiktionaryInflection/WiktionaryInflection.php      
2010-07-27 21:01:50 UTC (rev 70044)
+++ trunk/extensions/WiktionaryInflection/WiktionaryInflection.php      
2010-07-27 21:08:22 UTC (rev 70045)
@@ -57,32 +57,33 @@
    return new InflectionRule($ruleAttributes);
 }
 
-function renderInflection($input, $argv) {
-       global $wgParser, $wgUser;
-
-       $key = $wgParser->replaceVariables($input, end( $wgParser->mArgStack ));
-       if(array_key_exists("lang", $argv))
+function renderInflection($input, $argv, $parser, $frame) {
+       $key = $parser->replaceVariables( $input, $frame );
+       if( array_key_exists( "lang", $argv ) ) {
                $language = $argv["lang"];
-       else
+       } else {
                return "?<!-- missing required \"lang\" parameter. -->";
-       if(array_key_exists("pos", $argv))
+       }
+       if ( array_key_exists("pos", $argv) ) {
                $partOfSpeech = $argv["pos"];
-       else
+       } else {
                return "?<!-- missing required \"pos\" parameter. -->";
-       if(array_key_exists("generate", $argv))
+       }
+       if ( array_key_exists( "generate", $argv ) ) {
                $inflectionTypeToGenerate = $argv["generate"];
-       else
+       } else {
                return "?<!-- missing required \"generate\" parameter. -->";
+       }
 
-       $entry = $wgParser->mTitle->getText();
+       $entry = $parser->mTitle->getText();
 
        try {
-               $rules = readRules($language, $partOfSpeech);
-               foreach($rules as $rule) {
-                       if($rule->entryMatchPattern)
+               $rules = readRules( $language, $partOfSpeech );
+               foreach ( $rules as $rule ) {
+                       if ( $rule->entryMatchPattern )
                        {
                                if(!$rule->inflKeyPattern ||
-                                       ($rule->inflKeyPattern && 
preg_match("/" . $rule->inflKeyPattern . "/", $wgParser->replaceVariables($key, 
$wgParser->mArgStack))))
+                                       ($rule->inflKeyPattern && 
preg_match("/" . $rule->inflKeyPattern . "/", $parser->replaceVariables($key, 
$frame) ) ) )
                                {
                                        $inflectedForm = preg_replace(
                                                "/" . $rule->entryMatchPattern 
. "/",
@@ -91,7 +92,7 @@
                                        if($count >= 1)
                                                return $inflectedForm;
                                }
-                       } elseif($rule->inflKeyPattern) {
+                       } elseif ($rule->inflKeyPattern) {
                                $inflectedForm = preg_replace(
                                        "/" . $rule->inflKeyPattern . "/",
                                        
$rule->generationReplacementPattern[$inflectionTypeToGenerate],



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

Reply via email to