diff --git a/LinkTitles.body.php b/LinkTitles.body.php index 71e4602..e99f4b8 100755 --- a/LinkTitles.body.php +++ b/LinkTitles.body.php @@ -25,10 +25,12 @@ } function dump($var) { - error_log(print_r($var, TRUE), 3, 'php://stderr'); + error_log(print_r($var, TRUE) . "\n", 3, 'php://stderr'); }; class LinkTitles { + static $st; + /// Setup function, hooks the extension's functions to MediaWiki events. public static function setup() { global $wgLinkTitlesParseOnEdit; @@ -79,11 +81,11 @@ global $wgLinkTitlesFirstOnly; global $wgLinkTitlesWordStartOnly; global $wgLinkTitlesWordEndOnly; - global $wgLinkTitlesIgnoreCase; + // global $wgLinkTitlesIgnoreCase; ( $wgLinkTitlesWordStartOnly ) ? $wordStartDelim = '\b' : $wordStartDelim = ''; ( $wgLinkTitlesWordEndOnly ) ? $wordEndDelim = '\b' : $wordEndDelim = ''; - ( $wgLinkTitlesIgnoreCase ) ? $regexModifier = 'i' : $regexModifier = ''; + // ( $wgLinkTitlesIgnoreCase ) ? $regexModifier = 'i' : $regexModifier = ''; // To prevent adding self-references, we now // extract the current page's title. @@ -146,11 +148,13 @@ $arr = preg_split( $delimiter, $text, -1, PREG_SPLIT_DELIM_CAPTURE ); // dump( $arr ); $safeTitle = str_replace( '/', '\/', $title ); + LinkTitles::$st = $safeTitle; for ( $i = 0; $i < count( $arr ); $i+=2 ) { // even indexes will point to text that is not enclosed by brackets - $arr[$i] = preg_replace( '/(?= 0 ) && ( $count > 0 )) { break; }; @@ -160,6 +164,14 @@ }; // foreach $res as $row return true; } + + static function CallBack($matches) { + if ( strcmp(substr(LinkTitles::$st, 1), substr($matches[0], 1)) == 0 ) { + return '[[' . $matches[0] . ']]'; + } else { + return '[[' . LinkTitles::$st . '|' . $matches[0] . ']]'; + } + } } // vim: ts=2:sw=2:noet diff --git a/LinkTitles.php b/LinkTitles.php index 26b0308..2900938 100755 --- a/LinkTitles.php +++ b/LinkTitles.php @@ -42,14 +42,14 @@ $wgLinkTitlesFirstOnly = false; $wgLinkTitlesWordStartOnly = true; $wgLinkTitlesWordEndOnly = true; - $wgLinkTitlesIgnoreCase = true; +// $wgLinkTitlesIgnoreCase = true; $wgExtensionCredits['parserhook'][] = array( 'path' => __FILE__, 'name' => 'LinkTitles', 'author' => '[http://www.mediawiki.org/wiki/User:Bovender Daniel Kraus]', 'url' => 'http://www.mediawiki.org/wiki/Extension:LinkTitles', - 'version' => '1.7.0', + 'version' => '1.8.1', 'descriptionmsg' => 'linktitles-desc' ); diff --git a/NEWS b/NEWS index e23582d..49eb0d2 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,8 @@ +LinkTitles 1.8.1: 2013-01-26 +* The extension will now automatically generate aliases for case-mismatched + page titles. +* Fix version number confusion (1.7.0 in the extension vs. 1.8.0 on GitHub). + LinkTitles 1.7.0: 2013-01-22 * Added new option to do exact searches of page titles; the default is to do __case-insensitive__ searches as before ($wgLinkTitlesIgnoreCase). @@ -61,4 +66,4 @@ LinkTitles 0.0.2: 2012-05-20 LinkTitles 0.0.1: 2012-05-20 * Initial release. -# vim: flp=\*\s +# vim: fo=tqn:flp=\*\s diff --git a/release/LinkTitles-1.8.1.tar.gz b/release/LinkTitles-1.8.1.tar.gz new file mode 100644 index 0000000..4112164 Binary files /dev/null and b/release/LinkTitles-1.8.1.tar.gz differ