diff options
author | Pierre Schmitz <pierre@archlinux.de> | 2007-09-14 13:18:58 +0200 |
---|---|---|
committer | Pierre Schmitz <pierre@archlinux.de> | 2007-09-14 13:18:58 +0200 |
commit | 8f416baead93a48e5799e44b8bd2e2c4859f4e04 (patch) | |
tree | cd47ac55eb80a39e3225e8b4f3161b88ea16c2cf /includes/SpecialMovepage.php | |
parent | d7d08bd1a17618c7d77a6b9b2989e9f7293d6ed6 (diff) |
auf Version 1.11 aktualisiert; Login-Bug behoben
Diffstat (limited to 'includes/SpecialMovepage.php')
-rw-r--r-- | includes/SpecialMovepage.php | 65 |
1 files changed, 31 insertions, 34 deletions
diff --git a/includes/SpecialMovepage.php b/includes/SpecialMovepage.php index d8f01874..cfc434ae 100644 --- a/includes/SpecialMovepage.php +++ b/includes/SpecialMovepage.php @@ -12,7 +12,7 @@ function wfSpecialMovepage( $par = null ) { # Check rights if ( !$wgUser->isAllowed( 'move' ) ) { - $wgOut->showErrorPage( 'movenologin', 'movenologintext' ); + $wgOut->showPermissionsErrorPage( array( $wgUser->isAnon() ? 'movenologintext' : 'movenotallowed' ) ); return; } @@ -105,14 +105,10 @@ class MovePageForm { if ( $err == 'articleexists' && $wgUser->isAllowed( 'delete' ) ) { $wgOut->addWikiText( wfMsg( 'delete_and_move_text', $encNewTitle ) ); $movepagebtn = wfMsgHtml( 'delete_and_move' ); - $confirmText = wfMsgHtml( 'delete_and_move_confirm' ); $submitVar = 'wpDeleteAndMove'; $confirm = " <tr> - <td align='$end'> - <input type='checkbox' name='wpConfirm' id='wpConfirm' value=\"true\" /> - </td> - <td align='$start'><label for='wpConfirm'>{$confirmText}</label></td> + <td></td><td>" . Xml::checkLabel( wfMsg( 'delete_and_move_confirm' ), 'wpConfirm', 'wpConfirm' ) . "</td> </tr>"; $err = ''; } else { @@ -131,7 +127,6 @@ class MovePageForm { $movearticle = wfMsgHtml( 'movearticle' ); $newtitle = wfMsgHtml( 'newtitle' ); - $movetalk = wfMsgHtml( 'movetalk' ); $movereason = wfMsgHtml( 'movereason' ); $titleObj = SpecialPage::getTitleFor( 'Movepage' ); @@ -149,18 +144,18 @@ class MovePageForm { <form id=\"movepage\" method=\"post\" action=\"{$action}\"> <table border='0'> <tr> - <td align='$end'>{$movearticle}:</td> + <td align='$end'>{$movearticle}</td> <td align='$start'><strong>{$oldTitle}</strong></td> </tr> <tr> - <td align='$end'><label for='wpNewTitle'>{$newtitle}:</label></td> + <td align='$end'><label for='wpNewTitle'>{$newtitle}</label></td> <td align='$start'> <input type='text' size='40' name='wpNewTitle' id='wpNewTitle' value=\"{$encNewTitle}\" /> <input type='hidden' name=\"wpOldTitle\" value=\"{$encOldTitle}\" /> </td> </tr> <tr> - <td align='$end' valign='top'><br /><label for='wpReason'>{$movereason}:</label></td> + <td align='$end' valign='top'><br /><label for='wpReason'>{$movereason}</label></td> <td align='$start' valign='top'><br /> <textarea cols='60' rows='2' name='wpReason' id='wpReason'>{$encReason}</textarea> </td> @@ -169,20 +164,16 @@ class MovePageForm { if ( $considerTalk ) { $wgOut->addHTML( " <tr> - <td align='$end'> - <input type='checkbox' id=\"wpMovetalk\" name=\"wpMovetalk\"{$moveTalkChecked} value=\"1\" /> - </td> - <td><label for=\"wpMovetalk\">{$movetalk}</label></td> + <td></td><td>" . Xml::checkLabel( wfMsg( 'movetalk' ), 'wpMovetalk', 'wpMovetalk', $moveTalkChecked ) . "</td> </tr>" ); } - + $watchChecked = $this->watch || $wgUser->getBoolOption( 'watchmoves' ) || $ot->userIsWatching(); $watch = '<tr>'; - $watch .= "<td align=\"$end\">" . Xml::check( 'wpWatch', $watchChecked, array( 'id' => 'watch' ) ) . '</td>'; - $watch .= '<td>' . Xml::label( wfMsg( 'move-watch' ), 'watch' ) . '</td>'; + $watch .= '<td></td><td>' . Xml::checkLabel( wfMsg( 'move-watch' ), 'wpWatch', 'watch', $watchChecked ) . '</td>'; $watch .= '</tr>'; $wgOut->addHtml( $watch ); - + $wgOut->addHTML( " {$confirm} <tr> @@ -275,32 +266,38 @@ class MovePageForm { } function showSuccess() { - global $wgOut, $wgRequest, $wgRawHtml; + global $wgOut, $wgRequest, $wgUser; + + $old = Title::newFromText( $wgRequest->getVal( 'oldtitle' ) ); + $new = Title::newFromText( $wgRequest->getVal( 'newtitle' ) ); + + if( is_null( $old ) || is_null( $new ) ) { + throw new ErrorPageError( 'badtitle', 'badtitletext' ); + } $wgOut->setPagetitle( wfMsg( 'movepage' ) ); $wgOut->setSubtitle( wfMsg( 'pagemovedsub' ) ); - $oldText = wfEscapeWikiText( $wgRequest->getVal('oldtitle') ); - $newText = wfEscapeWikiText( $wgRequest->getVal('newtitle') ); - $talkmoved = $wgRequest->getVal('talkmoved'); + $talkmoved = $wgRequest->getVal( 'talkmoved' ); + $oldUrl = $old->getFullUrl( 'redirect=no' ); + $newUrl = $new->getFullURl(); + $oldText = $old->getPrefixedText(); + $newText = $new->getPrefixedText(); + $oldLink = "<span class='plainlinks'>[$oldUrl $oldText]</span>"; + $newLink = "<span class='plainlinks'>[$newUrl $newText]</span>"; - $text = wfMsg( 'pagemovedtext', $oldText, $newText ); - - $allowHTML = $wgRawHtml; - $wgRawHtml = false; - $wgOut->addWikiText( $text ); - $wgRawHtml = $allowHTML; + $s = wfMsg( 'movepage-moved', $oldLink, $newLink, $oldText, $newText ); if ( $talkmoved == 1 ) { - $wgOut->addWikiText( wfMsg( 'talkpagemoved' ) ); + $s .= "\n\n" . wfMsg( 'talkpagemoved' ); } elseif( 'articleexists' == $talkmoved ) { - $wgOut->addWikiText( wfMsg( 'talkexists' ) ); + $s .= "\n\n" . wfMsg( 'talkexists' ); } else { - $oldTitle = Title::newFromText( $oldText ); - if ( isset( $oldTitle ) && !$oldTitle->isTalkPage() && $talkmoved != 'notalkpage' ) { - $wgOut->addWikiText( wfMsg( 'talkpagenotmoved', wfMsg( $talkmoved ) ) ); + if( !$old->isTalkPage() && $talkmoved != 'notalkpage' ) { + $s .= "\n\n" . wfMsg( 'talkpagenotmoved', wfMsg( $talkmoved ) ); } } + $wgOut->addWikiText( $s ); } function showLogFragment( $title, &$out ) { @@ -311,4 +308,4 @@ class MovePageForm { } } -?> + |