T
public function rules(): array
{
return [
'email' => [
new Required(),
new Email()
],
'username' => [
new Required(),
],
$this->passwordRules()
];
}
private function passwordRules(): array
{
$result = [];
if ($this->UserParameters->isRegistration() === false) {
$result = [
'password' => [
(new MatchRegularExpression('/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$/'))
->message('Must contain at least one number and one uppercase and lowercase letter, and at ' .
'least 8 or more characters.')
]
];
}
return $result;
}