Page MenuHomePhabricator

Ajax check for username availability is not aware of global accounts that are not attached to the local wiki
Closed, ResolvedPublic

Description

The check in resources/src/mediawiki.special/mediawiki.special.userlogin.signup.js that attempts to help the user choose an available username is not aware of CentralAuth accounts that have not been attached to the local wiki. This is due to the use of /w/api.php?action=query&list=users to power the check.

Example:

The conflict will be noticed when the form is submitted, but it would be nicer if users were warned about global user conflicts by the pre-submit validation.


Version: 1.24rc
Severity: enhancement
See Also:
https://bugzilla.wikimedia.org/show_bug.cgi?id=64728

Details

Reference
bz70058

Event Timeline

bzimport raised the priority of this task from to Needs Triage.Nov 22 2014, 3:28 AM
bzimport set Reference to bz70058.
bzimport added a subscriber: Unknown Object (MLST).

Known issue, the functionality was added in 74b222230 with the comment:

The way this is done (via action=query&list=users API) means that we
can't check for all possible error conditions, both for the username
(e.g. these enforced by extensions like AntiSpoof) and other parts of
the form (e-mail, password…) – these are still handled server-side
only. Thus we intentionally never say that whatever the user typed in
is valid – we only warn when we know it's not.

Doing this "properly" would require some reworking of the internals of
the signup process and this way is already a huge improvement.

Basically, this would probably be best solved with a "dry run" mode for the registration form.

(Hmm, this might be a duplicate/dependency of bug 64728. Definitely related.)

This is definitely a dup of bug 64728

  • This bug has been marked as a duplicate of bug 64728 ***