Skip to content

Commit

Permalink
Fix arkose CAPTCHA bugs
Browse files Browse the repository at this point in the history
  • Loading branch information
Treterten committed May 30, 2024
1 parent 4ec1a01 commit 8d1d28d
Showing 1 changed file with 27 additions and 6 deletions.
33 changes: 27 additions & 6 deletions src/connection/database/actions.js
Original file line number Diff line number Diff line change
Expand Up @@ -309,21 +309,42 @@ function resetPasswordError(id, error) {
}

export function showLoginActivity(id, fields = ['password']) {
swapCaptcha(id, Flow.PASSWORD_RESET, false, () => {
const m = read(getEntity, 'lock', id);
const captchaConfig = l.captcha(m);
const captchaProvider = captchaConfig.get('provider');
if (captchaProvider === 'arkose') {
swap(updateEntity, 'lock', id, setScreen, 'login', fields);
});
} else {
swapCaptcha(id, 'login', false, () => {
swap(updateEntity, 'lock', id, setScreen, 'login', fields);
});
}
}

export function showSignUpActivity(id, fields = ['password']) {
swapCaptcha(id, Flow.PASSWORD_RESET, false, () => {
const m = read(getEntity, 'lock', id);
const captchaConfig = l.captcha(m);
const captchaProvider = captchaConfig.get('provider');
if (captchaProvider === 'arkose') {
swap(updateEntity, 'lock', id, setScreen, 'signUp', fields);
});
} else {
swapCaptcha(id, 'login', false, () => {
swap(updateEntity, 'lock', id, setScreen, 'signUp', fields);
});
}
}

export function showResetPasswordActivity(id, fields = ['password']) {
swapCaptcha(id, Flow.PASSWORD_RESET, false, () => {
const m = read(getEntity, 'lock', id);
const captchaConfig = l.passwordResetCaptcha(m);
const captchaProvider = captchaConfig.get('provider');
if (captchaProvider === 'arkose') {
swap(updateEntity, 'lock', id, setScreen, 'forgotPassword', fields);
});
} else {
swapCaptcha(id, 'login', false, () => {
swap(updateEntity, 'lock', id, setScreen, 'forgotPassword', fields);
});
}
}

export function cancelResetPassword(id) {
Expand Down

0 comments on commit 8d1d28d

Please sign in to comment.