Index: trunk/phase3/languages/MessagesEn.php |
— | — | @@ -283,6 +283,7 @@ |
284 | 284 | 'newsectionlink' => array( 1, '__NEWSECTIONLINK__' ), |
285 | 285 | 'currentversion' => array( 1, 'CURRENTVERSION' ), |
286 | 286 | 'urlencode' => array( 0, 'URLENCODE:' ), |
| 287 | + 'anchorencode' => array( 0, 'ANCHORENCODE' ), |
287 | 288 | 'currenttimestamp' => array( 1, 'CURRENTTIMESTAMP' ), |
288 | 289 | 'localtimestamp' => array( 1, 'LOCALTIMESTAMP' ), |
289 | 290 | 'directionmark' => array( 1, 'DIRECTIONMARK', 'DIRMARK' ), |
Index: trunk/phase3/RELEASE-NOTES |
— | — | @@ -162,6 +162,7 @@ |
163 | 163 | * (bug 366) Add local-system-timezone equivalents for date/time variables |
164 | 164 | * (bug 7109) Fix Atom feed version number in header links |
165 | 165 | * (bug 7075) List registered parser function hooks on Special:Version |
| 166 | +* (bug 7059) Introduce "anchorencode" colon function |
166 | 167 | |
167 | 168 | == Languages updated == |
168 | 169 | |
Index: trunk/phase3/includes/CoreParserFunctions.php |
— | — | @@ -163,6 +163,10 @@ |
164 | 164 | return self::pad( $string, $length, $char ); |
165 | 165 | } |
166 | 166 | |
| 167 | + function anchorencode( $parser, $text ) { |
| 168 | + return str_replace( '%', '.', urlencode( $text ) ); |
| 169 | + } |
| 170 | + |
167 | 171 | } |
168 | 172 | |
169 | 173 | ?> |
Index: trunk/phase3/includes/Parser.php |
— | — | @@ -160,6 +160,7 @@ |
161 | 161 | $this->setFunctionHook( 'language', array( 'CoreParserFunctions', 'language' ), SFH_NO_HASH ); |
162 | 162 | $this->setFunctionHook( 'padleft', array( 'CoreParserFunctions', 'padleft' ), SFH_NO_HASH ); |
163 | 163 | $this->setFunctionHook( 'padright', array( 'CoreParserFunctions', 'padright' ), SFH_NO_HASH ); |
| 164 | + $this->setFunctionHook( 'anchorencode', array( 'CoreParserFunctions', 'anchorencode' ), SFH_NO_HASH ); |
164 | 165 | |
165 | 166 | if ( $wgAllowDisplayTitle ) { |
166 | 167 | $this->setFunctionHook( 'displaytitle', array( 'CoreParserFunctions', 'displaytitle' ), SFH_NO_HASH ); |