mirror of
https://github.com/elyby/accounts-frontend.git
synced 2024-12-28 07:50:32 +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, {
|
export default connect(null, {
|
||||||
changePassword: (form) => {
|
changePassword: (form) => {
|
||||||
return (dispatch) => {
|
return (dispatch) => {
|
||||||
// TODO: судя по всему registerPopup было явно лишним. Надо еще раз
|
accounts.changePassword(form.serialize())
|
||||||
// обдумать API и переписать
|
.catch((resp) => {
|
||||||
dispatch(registerPopup('requestPassword', PasswordRequestForm));
|
// prevalidate user input, because requestPassword popup will block the
|
||||||
dispatch(createPopup('requestPassword', (props) => {
|
// entire form from input, so it must be valid
|
||||||
return {
|
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,
|
form,
|
||||||
onSubmit: () => {
|
onSubmit: () => {
|
||||||
// TODO: hide this logic in action
|
// TODO: hide this logic in action
|
||||||
@ -62,8 +77,8 @@ export default connect(null, {
|
|||||||
.then(props.onClose)
|
.then(props.onClose)
|
||||||
.then(() => dispatch(goToProfile()));
|
.then(() => dispatch(goToProfile()));
|
||||||
}
|
}
|
||||||
};
|
})));
|
||||||
}));
|
});
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
})(ChangePasswordPage);
|
})(ChangePasswordPage);
|
||||||
|
Loading…
Reference in New Issue
Block a user