mirror of
https://github.com/elyby/accounts-frontend.git
synced 2024-12-27 15:30:37 +05:30
Do not request password till newPassword and newRePassword are valid
This commit is contained in:
parent
e1f16d7346
commit
9df4819905
@ -37,11 +37,26 @@ function goToProfile() {
|
||||
export default connect(null, {
|
||||
changePassword: (form) => {
|
||||
return (dispatch) => {
|
||||
// TODO: судя по всему registerPopup было явно лишним. Надо еще раз
|
||||
// обдумать API и переписать
|
||||
dispatch(registerPopup('requestPassword', PasswordRequestForm));
|
||||
dispatch(createPopup('requestPassword', (props) => {
|
||||
return {
|
||||
accounts.changePassword(form.serialize())
|
||||
.catch((resp) => {
|
||||
// prevalidate user input, because requestPassword popup will block the
|
||||
// entire form from input, so it must be valid
|
||||
if (resp.errors) {
|
||||
Reflect.deleteProperty(resp.errors, 'password');
|
||||
|
||||
if (Object.keys(resp.errors).length) {
|
||||
form.setErrors(resp.errors);
|
||||
return Promise.reject(resp);
|
||||
}
|
||||
}
|
||||
|
||||
return Promise.resolve();
|
||||
})
|
||||
.then(() => {
|
||||
// TODO: судя по всему registerPopup было явно лишним. Надо еще раз
|
||||
// обдумать API и переписать
|
||||
dispatch(registerPopup('requestPassword', PasswordRequestForm));
|
||||
dispatch(createPopup('requestPassword', (props) => ({
|
||||
form,
|
||||
onSubmit: () => {
|
||||
// TODO: hide this logic in action
|
||||
@ -62,8 +77,8 @@ export default connect(null, {
|
||||
.then(props.onClose)
|
||||
.then(() => dispatch(goToProfile()));
|
||||
}
|
||||
};
|
||||
}));
|
||||
})));
|
||||
});
|
||||
};
|
||||
}
|
||||
})(ChangePasswordPage);
|
||||
|
Loading…
Reference in New Issue
Block a user