From e352a54f5fc52defea23e8f3cbf895c19a41dbf9 Mon Sep 17 00:00:00 2001 From: theopolisme Date: Sun, 22 Dec 2013 00:05:07 -0600 Subject: [PATCH] Clearer message for range blocks on CreateAccount If a user tries to create an account but their IP address is part of a range block, this will be reflected in the error that is displayed via the cantcreateaccount-range-text message. Bug: 35090 Change-Id: I74e912755dea93c2b74e67d7104b7525298051c0 --- includes/specials/SpecialUserlogin.php | 21 +++++++++++++++------ languages/messages/MessagesEn.php | 3 +++ languages/messages/MessagesQqq.php | 5 +++++ maintenance/language/messages.inc | 1 + 4 files changed, 24 insertions(+), 6 deletions(-) diff --git a/includes/specials/SpecialUserlogin.php b/includes/specials/SpecialUserlogin.php index b9a84bed69..d071e75cc8 100644 --- a/includes/specials/SpecialUserlogin.php +++ b/includes/specials/SpecialUserlogin.php @@ -980,14 +980,23 @@ class LoginForm extends SpecialPage { # haven't bothered to log out before trying to create an account to # evade it, but we'll leave that to their guilty conscience to figure # out. + $errorParams = array( + $block->getTarget(), + $block->mReason ? $block->mReason : $this->msg( 'blockednoreason' )->text(), + $block->getByName() + ); + + if ( $block->getType() === Block::TYPE_RANGE ) { + $errorMessage = 'cantcreateaccount-range-text'; + $errorParams[] = $this->getRequest()->getIP(); + } else { + $errorMessage = 'cantcreateaccount-text'; + } + throw new ErrorPageError( 'cantcreateaccounttitle', - 'cantcreateaccount-text', - array( - $block->getTarget(), - $block->mReason ? $block->mReason : $this->msg( 'blockednoreason' )->text(), - $block->getByName() - ) + $errorMessage, + $errorParams ); } diff --git a/languages/messages/MessagesEn.php b/languages/messages/MessagesEn.php index e8159956dd..f645531633 100644 --- a/languages/messages/MessagesEn.php +++ b/languages/messages/MessagesEn.php @@ -1615,6 +1615,9 @@ Please check the comparison below to verify that this is what you want to do, an # Account creation failure 'cantcreateaccounttitle' => 'Cannot create account', +'cantcreateaccount-range-text' => "Account creation from IP addresses in the range '''$1''', which includes your IP address ('''$4'''), has been blocked by [[User:$3|$3]]. + +The reason given by $3 is ''$2''", 'cantcreateaccount-text' => "Account creation from this IP address ('''$1''') has been blocked by [[User:$3|$3]]. The reason given by $3 is ''$2''", diff --git a/languages/messages/MessagesQqq.php b/languages/messages/MessagesQqq.php index 4fc329a40b..803067e72f 100644 --- a/languages/messages/MessagesQqq.php +++ b/languages/messages/MessagesQqq.php @@ -2266,6 +2266,11 @@ See also: * $1 - target IP address * $2 - reason or {{msg-mw|blockednoreason}} * $3 - username', +'cantcreateaccount-range-text' => "Used as more detailed version of the {{msg-mw|Cantcreateaccount-text}} error message, with the title {{msg-mw|cantcreateaccounttitle}}. +* $1 - target IP range +* $2 - reason or {{msg-mw|blockednoreason}} +* $3 - username +* $4 - current user's IP address", # History pages 'viewpagelogs' => 'Link displayed in history of pages', diff --git a/maintenance/language/messages.inc b/maintenance/language/messages.inc index 662c3d3e96..5e463b2404 100644 --- a/maintenance/language/messages.inc +++ b/maintenance/language/messages.inc @@ -800,6 +800,7 @@ $wgMessageStructure = array( 'cantcreateaccount' => array( 'cantcreateaccounttitle', 'cantcreateaccount-text', + 'cantcreateaccount-range-text', ), 'history' => array( 'viewpagelogs', -- 2.20.1