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