Change rules for username
Consecutive spaces are now an error. They used to be automatically converted to a single space.
This commit is contained in:
parent
9bbc27b95f
commit
d18aeff528
7 changed files with 13 additions and 4 deletions
|
@ -27,7 +27,7 @@ class NewUser extends Users
|
|||
])->addRules([
|
||||
'token' => 'token:AdminUsersNew',
|
||||
'email' => 'required|string:trim|email:noban,unique',
|
||||
'username' => 'required|string:trim,spaces|username',
|
||||
'username' => 'required|string:trim|username',
|
||||
'password' => 'required|string|min:16|password',
|
||||
])->addAliases([
|
||||
'email' => 'Email',
|
||||
|
|
|
@ -98,7 +98,7 @@ trait PostValidatorTrait
|
|||
|
||||
if ($this->user->isGuest) {
|
||||
$ruleEmail = ('1' == $this->c->config->p_force_guest_email ? 'required|' : '') . 'string:trim|email:noban';
|
||||
$ruleUsername = 'required|string:trim,spaces|username';
|
||||
$ruleUsername = 'required|string:trim|username';
|
||||
} else {
|
||||
$ruleEmail = 'absent';
|
||||
$ruleUsername = 'absent';
|
||||
|
|
|
@ -37,7 +37,7 @@ class Edit extends Profile
|
|||
|
||||
if ('POST' === $method) {
|
||||
if ($this->rules->rename) {
|
||||
$ruleUsername = 'required|string:trim,spaces|username';
|
||||
$ruleUsername = 'required|string:trim|username';
|
||||
} else {
|
||||
$ruleUsername = 'absent';
|
||||
}
|
||||
|
|
|
@ -27,7 +27,7 @@ class Register extends Page
|
|||
'agree' => 'required|token:Register',
|
||||
'on' => 'integer',
|
||||
'email' => 'required_with:on|string:trim|email:noban,unique',
|
||||
'username' => 'required_with:on|string:trim,spaces|username',
|
||||
'username' => 'required_with:on|string:trim|username',
|
||||
'password' => 'required_with:on|string|min:16|password',
|
||||
'register' => 'required|string',
|
||||
])->addAliases([
|
||||
|
|
|
@ -38,6 +38,9 @@ class Username extends RulesValidator
|
|||
// 2-25 символов, буквы, цифры, пробел, подчеркивание, точка и тире
|
||||
if (! \preg_match('%^(?=.{2,25}$)\p{L}[\p{L}\p{N}\x20\._-]+$%uD', $username)) {
|
||||
$v->addError('Login format');
|
||||
// идущие подряд пробелы
|
||||
} elseif (\preg_match('%\s{2,}%u', $username)) {
|
||||
$v->addError('Username contains consecutive spaces');
|
||||
// цензура
|
||||
} elseif ($this->c->censorship->censor($username) !== $username) {
|
||||
$v->addError('Username censor');
|
||||
|
|
|
@ -50,3 +50,6 @@ msgstr "Please update your browser."
|
|||
|
||||
msgid "Bad browser"
|
||||
msgstr "Please update your browser."
|
||||
|
||||
msgid "Username contains consecutive spaces"
|
||||
msgstr "Username contains consecutive spaces."
|
||||
|
|
|
@ -50,3 +50,6 @@ msgstr "Обновите свой браузер."
|
|||
|
||||
msgid "Bad browser"
|
||||
msgstr "Обновите свой браузер."
|
||||
|
||||
msgid "Username contains consecutive spaces"
|
||||
msgstr "В имени пользователя есть идущие подряд пробелы."
|
||||
|
|
Loading…
Add table
Reference in a new issue