Extension:ImageHistoryClear
<?php /**
* ImageHistoryClear extension - An extension to strip TOC, history and links information from image page views by anonymous users. Made with Template:Extension. *Template:Php
* See http://www.mediawiki.org/wiki/Extension:ImageHistoryClear for installation and usage details * * @package MediaWiki * @subpackage Extensions * @author User:Jack * @copyright © 2008 User:Jack * @licence GNU General Public Licence 2.0 or later */
if (!defined('MEDIAWIKI')) die('Not an entry point.');
define('IMAGEHISTORYCLEAR_VERSION', '1.0.0, 2008-10-21');
$wgExtensionFunctions[] = 'efSetupImageHistoryClear';
$wgExtensionCredits['parserhook'][] = array( 'name' => 'ImageHistoryClear', 'author' => 'User:Jack', 'description' => 'An extension to strip TOC, history and links information from image page views by anonymous users. Made with Template:Extension.', 'url' => 'http://www.organicdesign.co.nz/Extension:ImageHistoryClear', 'version' => IMAGEHISTORYCLEAR_VERSION );
/**
* Function called from the hook BeforePageDisplay, with a regular expression to replace TOC, history and image information. */
function efImageHistoryClear (&$out) {
$out->mBodytext = preg_replace ('%(
- .+?
)(.*)(
mBodytext);
return true;
}
/**
* Setup function specifies a condition for the user being anonymous and the page being an image page */
function efSetupImageHistoryClear() { global $wgHooks,$wgUser,$wgRequest; $title = Title::newFromText($wgRequest->getText('title')); if (is_object ($title)) { if($title->getNamespace()==NS_IMAGE && $wgUser->isAnon()) $wgHooks['BeforePageDisplay'][] = 'efImageHistoryClear'; } }