One of the biggest usability issues with Access Rule is you can't provide a description of what the rule does. So when a user signs up and triggers an access rule they have no idea why their username or email is being denied.

For example if I didn't want spaces in usernames I'd set the rule "% %". Then when a user tries to signup with a username that has a spaces such as "bob jones" all they get told is "The name bob jones has been denied access." It'd be much better if we looked at the rule that was triggered "% %" and then looked for the description of the rule which would be something like "Sorry, username cannot contain spaces."

Comments

Anonymous’s picture

Status: Active » Closed (won't fix)

There would be the problem of how to translate the given description. As the value is read from the database, it is not possible to call t() as in t($rule->description).

My idea is to implement some simple rules that allow to restrict a username basing on the characters present, and return a more explicit message in those cases.