3 * Temporary action for restoring multi-content revisions
9 * Temporary action for restoring multi-content revisions.
11 * This is intended to go away when real MCR support is added to EditPage and
12 * the standard revert-by-edit behavior can be implemented there instead.
16 * @deprecated since 1.32
18 class McrRestoreAction
extends McrUndoAction
{
20 public function getName() {
24 public function getDescription() {
28 protected function initFromParameters() {
29 $curRev = $this->page
->getRevision();
31 throw new ErrorPageError( 'mcrundofailed', 'nopagetext' );
33 $this->curRev
= $curRev->getRevisionRecord();
34 $this->cur
= $this->getRequest()->getInt( 'cur', $this->curRev
->getId() );
36 $this->undo
= $this->cur
;
37 $this->undoafter
= $this->getRequest()->getInt( 'restore' );
39 if ( $this->undo
== 0 ||
$this->undoafter
== 0 ) {
40 throw new ErrorPageError( 'mcrundofailed', 'mcrundo-missingparam' );
44 protected function addStatePropagationFields( HTMLForm
$form ) {
45 $form->addHiddenField( 'restore', $this->undoafter
);
46 $form->addHiddenField( 'cur', $this->curRev
->getId() );
49 protected function alterForm( HTMLForm
$form ) {
50 parent
::alterForm( $form );
52 $form->setWrapperLegendMsg( 'confirm-mcrrestore-title' );