(bug 3315) Allow rollback directly from history page.
authorAryeh Gregor <simetrical@users.mediawiki.org>
Thu, 16 Nov 2006 07:18:18 +0000 (07:18 +0000)
committerAryeh Gregor <simetrical@users.mediawiki.org>
Thu, 16 Nov 2006 07:18:18 +0000 (07:18 +0000)
RELEASE-NOTES
includes/PageHistory.php

index 34d3616..458d4be 100644 (file)
@@ -185,6 +185,7 @@ it from source control: http://www.mediawiki.org/wiki/Download_from_SVN
 * (bug 6839) Wikibits.js minor changes to make JS-lint happier.
 * (bug 7932) Make sure that edit toolbar clears floats so it appears correctly.
 * (bug 6873) When viewing old revisions, add link to diff to current version.
+* (bug 3315) Allow rollback directly from history page.
 
 
 == Languages updated ==
index 380bbe2..780b5a0 100644 (file)
@@ -168,7 +168,7 @@ class PageHistory {
 
        /** @todo document */
        function historyLine( $row, $next, $counter = '', $notificationtimestamp = false, $latest = false, $firstInList = false ) {
-               global $wgUser;
+               global $wgUser, $wgRequest, $wgTitle;
                $rev = new Revision( $row );
                $rev->setTitle( $this->mTitle );
 
@@ -210,6 +210,14 @@ class PageHistory {
                if( $row->rev_deleted & Revision::DELETED_TEXT ) {
                        $s .= ' ' . wfMsgHtml( 'deletedrev' );
                }
+               if( $wgUser->isAllowed( 'rollback' ) && $firstInList ) {
+                       $extraRollback = $wgRequest->getBool( 'bot' ) ? '&bot=1' : '';
+                       $extraRollback .= '&token=' . urlencode(
+                               $wgUser->editToken( array( $wgTitle->getPrefixedText(), $rev->getUserText() ) ) );
+                       $s .= ' ['. $this->mSkin->makeKnownLinkObj( $wgTitle,
+                               wfMsg('rollbacklink'),
+                               'action=rollback&from=' . $rev->getUserText() . $extraRollback ) .']';
+               }
                $s .= "</li>\n";
 
                return $s;