ExpireDiff-Talk
This space is for User-contributed commentary and notes. Please include your name and a date along with your comment.
Comments
Small typo
Last version (20180108), line 23: if(IsEnabled(($EnableNoHistoryDirective, 0))
Thanks, now fixed. --Petko January 09, 2018, at 02:39 PM
Shouldn't this be also password protectable? Klonk
I made a little modification to add a pwd parameter to pass to the action, you have to encode your password into the expirediff.php file. I use it on my site. Here is the code I added to the original recipe:
<?php if ($action=='expirediff') { # Added code START # Change ABC to the password you like SDV($MyPwd,'ABC'); $InputPwd = @$_REQUEST['pwd']; if (! $MyPwd == $InputPwd ) { Abort("Wrong password!!"); } # Added code END Lock(2); .......
Starting with version 2.0.beta50, you can password-protect the action with
$HandleAuth['expirediff'] = 'edit';
or
$HandleAuth['expirediff'] = 'admin';
to require the edit or admin password respectively.
- (:table border=0:)
! |
I found out that some changes to expirediff.php are necessary to have password-protection via
--floozy |
That didn't quite work because you could expired the diff without having edit privileges. I made some similar changes that should work. Specifically,
- Added a line SDV(
$HandleAuth
['expirediff'], 'edit'); - Changed the Line
function HandleExpireDiff($pagename) {
to the following:function HandleExpireDiff($pagename, $auth) {
- Changed the Line
$page = RetrieveAuthPage($pagename, "edit");
to the following:$page = RetrieveAuthPage($pagename, $auth);
You may also add the following code to your local/config.php
in order to
add the ExpireDiff feature to the end of
the history pages:
... include_once('cookbook/expirediff.php'); ... if ($action == 'diff') { $ExpireDiffFmt = <<<_EOT_ <div id='wikiexpire'> <form action='\$PageUrl' method='post'> <input type='hidden' name='action' value='expirediff' /> <input type='hidden' name='n' value='\$FullName' /> <p>Expire difference(s) older than <input type='text' name='keepdays' value='7' /> day(s)</p> <input type='submit' /> </form> </div> _EOT_; $HandleDiffFmt = array(&$PageStartFmt, &$PageDiffFmt, 'function:PrintDiff', &$ExpireDiffFmt, &$PageEndFmt); } ...
-- Dfaure
- Thank you Dfaure for this setting, it works great. I'd also like to add that, thanks to Dfaure's inclusion of
<div id='wikiexpire'>
, you can style this in your history pages by adding this to your skin's .css file:
#wikiexpire { border: 1px solid #aaaaaa; background-color: #dddddd; padding: 2px 2px 2px 2px; font-weight: bold; }
You can change the above styling, just like any other css styling, to suit your skin. --Ian MacGregor
Talk page for the ExpireDiff recipe (users).