PLT-3880 Update the "Password Requirements" help text (#3989)
Этот коммит содержится в:
@@ -22,6 +22,8 @@ export default class PasswordSettings extends AdminSettings {
|
|||||||
|
|
||||||
this.getSampleErrorMsg = this.getSampleErrorMsg.bind(this);
|
this.getSampleErrorMsg = this.getSampleErrorMsg.bind(this);
|
||||||
|
|
||||||
|
this.handlePasswordLengthChange = this.handlePasswordLengthChange.bind(this);
|
||||||
|
|
||||||
this.state = Object.assign(this.state, {
|
this.state = Object.assign(this.state, {
|
||||||
passwordMinimumLength: props.config.PasswordSettings.MinimumLength,
|
passwordMinimumLength: props.config.PasswordSettings.MinimumLength,
|
||||||
passwordLowercase: props.config.PasswordSettings.Lowercase,
|
passwordLowercase: props.config.PasswordSettings.Lowercase,
|
||||||
@@ -54,17 +56,13 @@ export default class PasswordSettings extends AdminSettings {
|
|||||||
id={sampleErrorMsgId}
|
id={sampleErrorMsgId}
|
||||||
default='Your password must be at least {min} characters.'
|
default='Your password must be at least {min} characters.'
|
||||||
values={{
|
values={{
|
||||||
min: props.config.PasswordSettings.MinimumLength
|
min: (this.state.passwordMinimumLength || Constants.MIN_PASSWORD_LENGTH)
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
componentWillUpdate() {
|
|
||||||
this.sampleErrorMsg = this.getSampleErrorMsg();
|
|
||||||
}
|
|
||||||
|
|
||||||
getConfigFromState(config) {
|
getConfigFromState(config) {
|
||||||
if (global.window.mm_license.IsLicensed === 'true' && global.window.mm_license.PasswordRequirements === 'true') {
|
if (global.window.mm_license.IsLicensed === 'true' && global.window.mm_license.PasswordRequirements === 'true') {
|
||||||
config.PasswordSettings.MinimumLength = this.parseIntNonZero(this.state.passwordMinimumLength, Constants.MIN_PASSWORD_LENGTH);
|
config.PasswordSettings.MinimumLength = this.parseIntNonZero(this.state.passwordMinimumLength, Constants.MIN_PASSWORD_LENGTH);
|
||||||
@@ -96,7 +94,7 @@ export default class PasswordSettings extends AdminSettings {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
getSampleErrorMsg() {
|
getSampleErrorMsg(minLength) {
|
||||||
if (global.window.mm_license.IsLicensed === 'true' && global.window.mm_license.PasswordRequirements === 'true') {
|
if (global.window.mm_license.IsLicensed === 'true' && global.window.mm_license.PasswordRequirements === 'true') {
|
||||||
if (this.props.config.PasswordSettings.MinimumLength > Constants.MAX_PASSWORD_LENGTH || this.props.config.PasswordSettings.MinimumLength < Constants.MIN_PASSWORD_LENGTH) {
|
if (this.props.config.PasswordSettings.MinimumLength > Constants.MAX_PASSWORD_LENGTH || this.props.config.PasswordSettings.MinimumLength < Constants.MIN_PASSWORD_LENGTH) {
|
||||||
return (
|
return (
|
||||||
@@ -106,7 +104,6 @@ export default class PasswordSettings extends AdminSettings {
|
|||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
let sampleErrorMsgId = 'user.settings.security.passwordError';
|
let sampleErrorMsgId = 'user.settings.security.passwordError';
|
||||||
if (this.refs.lowercase.checked) {
|
if (this.refs.lowercase.checked) {
|
||||||
sampleErrorMsgId = sampleErrorMsgId + 'Lowercase';
|
sampleErrorMsgId = sampleErrorMsgId + 'Lowercase';
|
||||||
@@ -125,7 +122,7 @@ export default class PasswordSettings extends AdminSettings {
|
|||||||
id={sampleErrorMsgId}
|
id={sampleErrorMsgId}
|
||||||
default='Your password must be at least {min} characters.'
|
default='Your password must be at least {min} characters.'
|
||||||
values={{
|
values={{
|
||||||
min: this.props.config.PasswordSettings.MinimumLength
|
min: (minLength || Constants.MIN_PASSWORD_LENGTH)
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
@@ -134,6 +131,11 @@ export default class PasswordSettings extends AdminSettings {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
handlePasswordLengthChange(id, value) {
|
||||||
|
this.sampleErrorMsg = this.getSampleErrorMsg(value);
|
||||||
|
this.handleChange(id, value);
|
||||||
|
}
|
||||||
|
|
||||||
renderTitle() {
|
renderTitle() {
|
||||||
return (
|
return (
|
||||||
<h3>
|
<h3>
|
||||||
@@ -193,7 +195,7 @@ export default class PasswordSettings extends AdminSettings {
|
|||||||
/>
|
/>
|
||||||
}
|
}
|
||||||
value={this.state.passwordMinimumLength}
|
value={this.state.passwordMinimumLength}
|
||||||
onChange={this.handleChange}
|
onChange={this.handlePasswordLengthChange}
|
||||||
/>
|
/>
|
||||||
<Setting
|
<Setting
|
||||||
label={
|
label={
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user