wiki.techinc.nl/includes/SpecialUnlockdb.php

92 lines
2 KiB
PHP
Raw Normal View History

<?php
/**
*
* @package MediaWiki
* @subpackage SpecialPage
*/
2003-04-14 23:10:40 +00:00
/**
*
*/
function wfSpecialUnlockdb() {
2004-04-01 12:53:01 +00:00
global $wgUser, $wgOut, $wgRequest;
2003-04-14 23:10:40 +00:00
if ( ! $wgUser->isDeveloper() ) {
$wgOut->developerRequired();
return;
}
2004-04-01 12:53:01 +00:00
$action = $wgRequest->getText( 'action' );
2003-04-14 23:10:40 +00:00
$f = new DBUnlockForm();
if ( "success" == $action ) { $f->showSuccess(); }
else if ( "submit" == $action ) { $f->doSubmit(); }
else { $f->showForm( "" ); }
}
/**
*
* @package MediaWiki
* @subpackage SpecialPage
*/
2003-04-14 23:10:40 +00:00
class DBUnlockForm {
function showForm( $err )
{
global $wgOut, $wgUser, $wgLang;
$wgOut->setPagetitle( wfMsg( "unlockdb" ) );
$wgOut->addWikiText( wfMsg( "unlockdbtext" ) );
if ( "" != $err ) {
$wgOut->setSubtitle( wfMsg( "formerror" ) );
$wgOut->addHTML( "<p><font color='red' size='+1'>{$err}</font>\n" );
}
$lc = wfMsg( "unlockconfirm" );
$lb = wfMsg( "unlockbtn" );
$titleObj = Title::makeTitle( NS_SPECIAL, "Unlockdb" );
$action = $titleObj->escapeLocalURL( "action=submit" );
2003-04-14 23:10:40 +00:00
$wgOut->addHTML( "<p>
<form id=\"unlockdb\" method=\"post\" action=\"{$action}\">
<table border=0><tr>
<td align=right>
<input type=checkbox name=\"wpLockConfirm\">
</td>
<td align=\"left\">{$lc}<td>
</tr><tr>
<td>&nbsp;</td><td align=left>
<input type=submit name=\"wpLock\" value=\"{$lb}\">
</td></tr></table>
</form>\n" );
}
function doSubmit() {
2003-04-14 23:10:40 +00:00
global $wgOut, $wgUser, $wgLang;
2004-04-01 12:53:01 +00:00
global $wgRequest, $wgReadOnlyFile;
2003-04-14 23:10:40 +00:00
2004-04-01 12:53:01 +00:00
$wpLockConfirm = $wgRequest->getCheck( 'wpLockConfirm' );
2003-04-14 23:10:40 +00:00
if ( ! $wpLockConfirm ) {
$this->showForm( wfMsg( "locknoconfirm" ) );
return;
}
if ( ! unlink( $wgReadOnlyFile ) ) {
$wgOut->fileDeleteError( $wgReadOnlyFile );
return;
}
$titleObj = Title::makeTitle( NS_SPECIAL, "Unlockdb" );
$success = $titleObj->getFullURL( "action=success" );
2003-04-14 23:10:40 +00:00
$wgOut->redirect( $success );
}
function showSuccess() {
2003-04-14 23:10:40 +00:00
global $wgOut, $wgUser;
global $ip;
$wgOut->setPagetitle( wfMsg( "unlockdb" ) );
$wgOut->setSubtitle( wfMsg( "unlockdbsuccesssub" ) );
2003-11-15 13:41:26 +00:00
$wgOut->addWikiText( wfMsg( "unlockdbsuccesstext", $ip ) );
2003-04-14 23:10:40 +00:00
}
}
?>