summaryrefslogtreecommitdiff
path: root/packages/backend/src/server/api/SignupApiService.ts
diff options
context:
space:
mode:
authorMarie <github@yuugi.dev>2024-11-02 02:20:35 +0100
committerMarie <github@yuugi.dev>2024-11-02 02:20:35 +0100
commitd786e96c2bb6d637be7289efdb6766ae4406af1f (patch)
tree806e3bd85e7b63c7c3e657e80c9ae4fcda5d91b9 /packages/backend/src/server/api/SignupApiService.ts
parentmerge: Add a clear filter option to the search widget if set (!722) (diff)
downloadsharkey-d786e96c2bb6d637be7289efdb6766ae4406af1f.tar.gz
sharkey-d786e96c2bb6d637be7289efdb6766ae4406af1f.tar.bz2
sharkey-d786e96c2bb6d637be7289efdb6766ae4406af1f.zip
upd: add FriendlyCaptcha as a captcha solution
FriendlyCaptcha is a german captcha solution which is GDPR compliant and has a non-commerical free license
Diffstat (limited to 'packages/backend/src/server/api/SignupApiService.ts')
-rw-r--r--packages/backend/src/server/api/SignupApiService.ts7
1 files changed, 7 insertions, 0 deletions
diff --git a/packages/backend/src/server/api/SignupApiService.ts b/packages/backend/src/server/api/SignupApiService.ts
index f21e1bd683..db860d710a 100644
--- a/packages/backend/src/server/api/SignupApiService.ts
+++ b/packages/backend/src/server/api/SignupApiService.ts
@@ -72,6 +72,7 @@ export class SignupApiService {
'g-recaptcha-response'?: string;
'turnstile-response'?: string;
'm-captcha-response'?: string;
+ 'frc-captcha-solution'?: string;
}
}>,
reply: FastifyReply,
@@ -104,6 +105,12 @@ export class SignupApiService {
throw new FastifyReplyError(400, err);
});
}
+
+ if (this.meta.enableFC && this.meta.fcSecretKey) {
+ await this.captchaService.verifyFriendlyCaptcha(this.meta.fcSecretKey, body['frc-captcha-solution']).catch(err => {
+ throw new FastifyReplyError(400, err);
+ });
+ }
}
const username = body['username'];