showList( $msg ); } else if ( "submit" == $action ) { if ( ! $wgUser->isSysop() ) { $wgOut->sysopRequired(); return; } $ipu->doSubmit(); } else if ( "unblock" == $action ) { $ipu->showForm( "" ); } else { $ipu->showList( "" ); } } class IPUnblockForm { function showForm( $err ) { global $wgOut, $wgUser, $wgLang; global $ip, $wpUnblockAddress; $wgOut->setPagetitle( wfMsg( "unblockip" ) ); $wgOut->addWikiText( wfMsg( "unblockiptext" ) ); if ( ! $wpUnblockAddress ) { $wpUnblockAddress = $ip; } $ipa = wfMsg( "ipaddress" ); $ipus = wfMsg( "ipusubmit" ); $action = wfLocalUrlE( $wgLang->specialPage( "Ipblocklist" ), "action=submit" ); if ( "" != $err ) { $wgOut->setSubtitle( wfMsg( "formerror" ) ); $wgOut->addHTML( "

{$err}\n" ); } $wgOut->addHTML( "

{$ipa}:
 
\n" ); } function doSubmit() { global $wgOut, $wgUser, $wgLang; global $ip, $wpUnblockAddress; $fname = "IPUnblockForm::doSubmit"; $sql = "DELETE FROM ipblocks WHERE ipb_address='{$wpUnblockAddress}'"; wfQuery( $sql, $fname ); $success = wfLocalUrl( $wgLang->specialPage( "Ipblocklist" ), "action=success&ip={$wpUnblockAddress}" ); $wgOut->redirect( $success ); } function showList( $msg ) { global $wgOut; $wgOut->setPagetitle( wfMsg( "ipblocklist" ) ); if ( "" != $msg ) { $wgOut->setSubtitle( $msg ); } $wgOut->addHTML( "\n" ); } } # Callback function function wfAddRow( $block, $tag ) { global $wgOut, $wgUser, $wgLang, $ip; $sk = $wgUser->getSkin(); $addr = $block->mAddress; $name = User::whoIs( $block->mBy ); $ulink = $sk->makeKnownLink( $wgLang->getNsText( Namespace::getUser() ). ":{$name}", $name ); $d = $wgLang->timeanddate( $block->mTimestamp, true ); $line = str_replace( "$1", $d, wfMsg( "blocklistline" ) ); $line = str_replace( "$2", $ulink, $line ); $line = str_replace( "$3", $block->mAddress, $line ); $wgOut->addHTML( "
  • {$line}" ); $clink = "specialPage( "Contributions" ), "target={$addr}" ) . "\">" . wfMsg( "contribslink" ) . ""; $wgOut->addHTML( " ({$clink})" ); if ( $wgUser->isSysop() ) { $ublink = "specialPage( "Ipblocklist" ), "action=unblock&ip={$addr}" ) . "\">" . wfMsg( "unblocklink" ) . ""; $wgOut->addHTML( " ({$ublink})" ); } if ( "" != $block->mReason ) { $wgOut->addHTML( " (" . wfEscapeHTML( $block->mReason ) . ")" ); } $wgOut->addHTML( "
  • \n" ); } ?>