diff --git a/src/register/RegistrationPage.jsx b/src/register/RegistrationPage.jsx index b129c222..0f822daf 100644 --- a/src/register/RegistrationPage.jsx +++ b/src/register/RegistrationPage.jsx @@ -79,6 +79,7 @@ class RegistrationPage extends React.Component { totalRegistrationTime: 0, optimizelyExperimentName: '', // eslint-disable-line react/no-unused-state readOnly: true, + validatePassword: false, }; } @@ -103,7 +104,11 @@ class RegistrationPage extends React.Component { shouldComponentUpdate(nextProps) { if (this.props.validationDecisions !== nextProps.validationDecisions) { const state = { errors: { ...this.state.errors, ...nextProps.validationDecisions } }; + let validatePassword = false; + if (state.errors.password) { + validatePassword = true; + } if (nextProps.registrationErrorCode) { state.errorCode = nextProps.registrationErrorCode; } @@ -126,6 +131,7 @@ class RegistrationPage extends React.Component { suggestedTopLevelDomain, suggestedSldMessage, suggestedServiceLevelDomain, + validatePassword, }); return false; } @@ -381,6 +387,9 @@ class RegistrationPage extends React.Component { } else { errors.username = ''; } + if (this.state.validatePassword) { + this.props.fetchRealtimeValidations({ ...payload, form_field_key: 'password' }); + } break; case 'password': errors.password = '';