https://www.mediawiki.org/wiki/Special:Code/MediaWiki/115044
Revision: 115044
Author: siebrand
Date: 2012-04-25 10:42:12 +0000 (Wed, 25 Apr 2012)
Log Message:
-----------
Add global $wgInterwikiViewOnly and setup function to allow conditional adding
of the interwiki log.
This feature is meant for a possible Wikimedia implementation, where interwiki
entries will never be changed locally, so there is no use for a log.
Modified Paths:
--------------
trunk/extensions/Interwiki/Interwiki.php
Modified: trunk/extensions/Interwiki/Interwiki.php
===================================================================
--- trunk/extensions/Interwiki/Interwiki.php 2012-04-25 10:31:31 UTC (rev
115043)
+++ trunk/extensions/Interwiki/Interwiki.php 2012-04-25 10:42:12 UTC (rev
115044)
@@ -21,16 +21,20 @@
die( "This is not a valid entry point.\n" );
}
+$wgInterwikiViewOnly = false;
+
// Extension credits for Special:Version
$wgExtensionCredits['specialpage'][] = array(
'path' => __FILE__,
'name' => 'Interwiki',
'author' => array( 'Stephanie Amanda Stevens', 'SPQRobin', 'Siebrand
Mazeland', 'Platonides', 'Raimond Spekking', 'Sam Reed', '...' ),
- 'version' => '2.1 20120425',
+ 'version' => '2.2 20120425',
'url' => 'https://www.mediawiki.org/wiki/Extension:Interwiki',
'descriptionmsg' => 'interwiki-desc',
);
+$wgExtensionFunctions[] = 'setupInterwikiExtension';
+
$wgResourceModules['SpecialInterwiki'] = array(
'styles' => 'Interwiki.css',
'localBasePath' => dirname( __FILE__ ),
@@ -45,11 +49,21 @@
$wgSpecialPages['Interwiki'] = 'SpecialInterwiki';
$wgSpecialPageGroups['Interwiki'] = 'wiki';
-// New user right, required to modify the interwiki table through
Special:Interwiki
-$wgAvailableRights[] = 'interwiki';
+function setupInterwikiExtension() {
+ wfProfileIn( 'setupInterwikiExtension' );
+ global $wgInterwikiViewOnly;
-// Set up the new log type - interwiki actions are logged to this new log
-$wgLogTypes[] = 'interwiki';
-$wgAutoloadClasses['InterwikiLogFormatter'] = $dir . 'Interwiki_body.php';
-# interwiki, iw_add, iw_delete, iw_edit
-$wgLogActionsHandlers['interwiki/*'] = 'InterwikiLogFormatter';
+ if ( $wgInterwikiViewOnly ) {
+ // New user right, required to modify the interwiki table
through Special:Interwiki
+ $wgAvailableRights[] = 'interwiki';
+
+ // Set up the new log type - interwiki actions are logged to
this new log
+ $wgLogTypes[] = 'interwiki';
+ $wgAutoloadClasses['InterwikiLogFormatter'] = $dir .
'Interwiki_body.php';
+ # interwiki, iw_add, iw_delete, iw_edit
+ $wgLogActionsHandlers['interwiki/*'] = 'InterwikiLogFormatter';
+ }
+
+ wfProfileOut( 'setupInterwikiExtension' );
+ return true;
+}
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs