protected function alterForm( HTMLForm $form ) {
$form->setWrapperLegendMsg( 'blockip-legend' );
$form->setHeaderText( '' );
- $form->setSubmitCallback( array( __CLASS__, 'processUIForm' ) );
$form->setSubmitDestructive();
$msg = $this->alreadyBlocked ? 'ipb-change-block' : 'ipbsubmit';
protected function preText() {
$this->getOutput()->addModules( array( 'mediawiki.special.block', 'mediawiki.userSuggest' ) );
- $text = $this->msg( 'blockiptext' )->parse();
+ $blockCIDRLimit = $this->getConfig()->get( 'BlockCIDRLimit' );
+ $text = $this->msg( 'blockiptext', $blockCIDRLimit['IPv4'], $blockCIDRLimit['IPv6'] )->parse();
$otherBlockMessages = array();
if ( $this->target !== null ) {
protected function postText() {
$links = array();
+ $this->getOutput()->addModuleStyles( 'mediawiki.special' );
+
# Link to the user's contributions, if applicable
if ( $this->target instanceof User ) {
$contribsPage = SpecialPage::getTitleFor( 'Contributions', $this->target->getName() );
}
/**
- * Submit callback for an HTMLForm object, will simply pass
- * @param array $data
- * @param HTMLForm $form
- * @return bool|string
- */
- public static function processUIForm( array $data, HTMLForm $form ) {
- return self::processForm( $data, $form->getContext() );
- }
-
- /**
- * Given the form data, actually implement a block
+ * Given the form data, actually implement a block. This is also called from ApiBlock.
+ *
* @param array $data
* @param IContextSource $context
* @return bool|string
if ( $data['HideUser'] ) {
if ( !$performer->isAllowed( 'hideuser' ) ) {
# this codepath is unreachable except by a malicious user spoofing forms,
- # or by race conditions (user has oversight and sysop, loads block form,
- # and is de-oversighted before submission); so need to fail completely
+ # or by race conditions (user has hideuser and block rights, loads block form,
+ # and loses hideuser rights before submission); so need to fail completely
# rather than just silently disable hiding
return array( 'badaccess-group0' );
}
$logParams['5::duration'] = $data['Expiry'];
$logParams['6::flags'] = self::blockLogFlags( $data, $type );
- # Make log entry, if the name is hidden, put it in the oversight log
+ # Make log entry, if the name is hidden, put it in the suppression log
$log_type = $data['HideUser'] ? 'suppress' : 'block';
$logEntry = new ManualLogEntry( $log_type, $logaction );
$logEntry->setTarget( Title::makeTitle( NS_USER, $target ) );
/**
* Process the form on POST submission.
* @param array $data
+ * @param HTMLForm $form
* @return bool|array True for success, false for didn't-try, array of errors on failure
*/
- public function onSubmit( array $data ) {
- // This isn't used since we need that HTMLForm that's passed in the
- // second parameter. See alterForm for the real function
+ public function onSubmit( array $data, HTMLForm $form = null ) {
+ return self::processForm( $data, $form->getContext() );
}
/**