function wfSpecialLockdb()
{
- global $wgUser, $wgOut, $action;
+ global $wgUser, $wgOut, $wgRequest;
if ( ! $wgUser->isDeveloper() ) {
$wgOut->developerRequired();
return;
}
- $fields = array( "wpLockReason" );
- wfCleanFormFields( $fields );
-
+ $action = $wgRequest->getText( 'action' );
$f = new DBLockForm();
if ( "success" == $action ) { $f->showSuccess(); }
- else if ( "submit" == $action ) { $f->doSubmit(); }
+ else if ( "submit" == $action && $wgRequest->wasPosted() ) { $f->doSubmit(); }
else { $f->showForm( "" ); }
}
class DBLockForm {
-
+ var $reason = "";
+
+ function DBLockForm() {
+ global $wgRequest;
+ $this->reason = $wgRequest->getText( 'wpLockReason' );
+ }
+
function showForm( $err )
{
global $wgOut, $wgUser, $wgLang;
- global $wpLockConfirm;
$wgOut->setPagetitle( wfMsg( "lockdb" ) );
$wgOut->addWikiText( wfMsg( "lockdbtext" ) );
$lc = wfMsg( "lockconfirm" );
$lb = wfMsg( "lockbtn" );
$elr = wfMsg( "enterlockreason" );
- $action = wfLocalUrlE( $wgLang->specialPage( "Lockdb" ),
- "action=submit" );
+ $titleObj = Title::makeTitle( NS_SPECIAL, "Lockdb" );
+ $action = $titleObj->escapeLocalURL( "action=submit" );
$wgOut->addHTML( "<p>
<form id=\"lockdb\" method=\"post\" action=\"{$action}\">
function doSubmit()
{
- global $wgOut, $wgUser, $wgLang;
- global $wpLockConfirm, $wpLockReason, $wgReadOnlyFile;
+ global $wgOut, $wgUser, $wgLang, $wgRequest;
+ global $wgReadOnlyFile;
- if ( ! $wpLockConfirm ) {
+ if ( ! $wgRequest->getCheck( 'wpLockConfirm' ) ) {
$this->showForm( wfMsg( "locknoconfirm" ) );
return;
}
$wgOut->fileNotFoundError( $wgReadOnlyFile );
return;
}
- fwrite( $fp, $wpLockReason );
+ fwrite( $fp, $this->reason );
fwrite( $fp, "\n<p>(by " . $wgUser->getName() . " at " .
$wgLang->timeanddate( wfTimestampNow() ) . ")\n" );
fclose( $fp );
- $success = wfLocalUrl( $wgLang->specialPage( "Lockdb" ),
- "action=success" );
- $wgOut->redirect( $success );
+ $titleObj = Title::makeTitle( NS_SPECIAL, "Lockdb" );
+ $wgOut->redirect( $titleObj->getFullURL( "action=success" ) );
}
function showSuccess()
{
global $wgOut, $wgUser;
- global $ip;
$wgOut->setPagetitle( wfMsg( "lockdb" ) );
$wgOut->setSubtitle( wfMsg( "lockdbsuccesssub" ) );
- $wgOut->addWikiText( wfMsg( "lockdbsuccesstext", $ip ) );
+ $wgOut->addWikiText( wfMsg( "lockdbsuccesstext" ) );
}
}