N°524 - password validity message can be superseded with conf

This commit is contained in:
bruno DA SILVA
2020-02-07 17:24:13 +01:00
parent e42aab30a5
commit 7e61917521
3 changed files with 95 additions and 3 deletions

View File

@@ -4,7 +4,7 @@
<module_parameters>
<parameters id="authent-local" _delta="define">
<password_validation.pattern>^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[^\da-zA-Z]).{8,}$</password_validation.pattern>
<password_validation.classes></password_validation.classes>
<password_validation.message type="hash"></password_validation.message>
</parameters>
</module_parameters>
</itop_design>

View File

@@ -325,7 +325,24 @@ class UserPasswordPolicyRegex implements UserLocalPasswordValidator
return new UserLocalPasswordValidity(true);
}
$sMessage = Dict::S('Error:UserLocalPasswordValidator:UserPasswordPolicyRegex:ValidationFailed');
$sUserLanguage = Dict::GetUserLanguage();
$customMessages = $config->GetModuleSetting('authent-local', 'password_validation.message', null);
if (is_string($customMessages) )
{
$sMessage = $customMessages;
}
elseif (isset($customMessages) && array_key_exists($sUserLanguage, $customMessages))
{
$sMessage = $customMessages[$sUserLanguage];
}
elseif (isset($customMessages) && array_key_exists('EN US', $customMessages))
{
$sMessage = $customMessages['EN US'];
}
else
{
$sMessage = Dict::S('Error:UserLocalPasswordValidator:UserPasswordPolicyRegex:ValidationFailed');
}
return new UserLocalPasswordValidity(
false,