Glaisher has uploaded a new change for review.
https://gerrit.wikimedia.org/r/235446
Change subject: Don't try to validate before form submission on
Special:UserMerge
......................................................................
Don't try to validate before form submission on Special:UserMerge
Otherwise, Title::newFromText throws out errors.
Bug: T101681
Change-Id: I43ee8b255fa9fa445dc0dd0ed1b81582cca1ce8b
---
M SpecialUserMerge.php
1 file changed, 23 insertions(+), 19 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/UserMerge
refs/changes/46/235446/1
diff --git a/SpecialUserMerge.php b/SpecialUserMerge.php
index 6707fb1..49bf5e8 100644
--- a/SpecialUserMerge.php
+++ b/SpecialUserMerge.php
@@ -62,18 +62,20 @@
* @return bool|string true if valid, a string of the error's message
key if validation failed
*/
public function validateOldUser( $val ) {
- global $wgUserMergeProtectedGroups;
- $oldUser = User::newFromName( $val );
- if ( !$oldUser || $oldUser->getId() === 0 ) {
- return 'usermerge-badolduser';
+ // Avoid HTMLForm errors on GET requests
+ if ( $this->getRequest()->wasPosted() ) {
+ global $wgUserMergeProtectedGroups;
+ $oldUser = User::newFromName( $val );
+ if ( !$oldUser || $oldUser->getId() === 0 ) {
+ return 'usermerge-badolduser';
+ }
+ if ( $this->getUser()->getId() === $oldUser->getId() ) {
+ return array( 'usermerge-noselfdelete',
$this->getUser()->getName() );
+ }
+ if ( count( array_intersect( $oldUser->getGroups(),
$wgUserMergeProtectedGroups ) ) ) {
+ return array( 'usermerge-protectedgroup',
$oldUser->getName() );
+ }
}
- if ( $this->getUser()->getId() === $oldUser->getId() ) {
- return array( 'usermerge-noselfdelete',
$this->getUser()->getName() );
- }
- if ( count( array_intersect( $oldUser->getGroups(),
$wgUserMergeProtectedGroups ) ) ) {
- return array( 'usermerge-protectedgroup',
$oldUser->getName() );
- }
-
return true;
}
@@ -82,15 +84,17 @@
* @return bool|string true if valid, a string of the error's message
key if validation failed
*/
public function validateNewUser( $val ) {
- global $wgUserMergeEnableDelete;
- if ( $wgUserMergeEnableDelete && $val === 'Anonymous' ) {
- return true; // Special case
+ // Avoid HTMLForm errors on GET requests
+ if ( $this->getRequest()->wasPosted() ) {
+ global $wgUserMergeEnableDelete;
+ if ( $wgUserMergeEnableDelete && $val === 'Anonymous' )
{
+ return true; // Special case
+ }
+ $newUser = User::newFromName( $val );
+ if ( !$newUser || $newUser->getId() === 0 ) {
+ return 'usermerge-badnewuser';
+ }
}
- $newUser = User::newFromName( $val );
- if ( !$newUser || $newUser->getId() === 0 ) {
- return 'usermerge-badnewuser';
- }
-
return true;
}
--
To view, visit https://gerrit.wikimedia.org/r/235446
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I43ee8b255fa9fa445dc0dd0ed1b81582cca1ce8b
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/UserMerge
Gerrit-Branch: master
Gerrit-Owner: Glaisher <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits