recaptcha: remove, it's not free anymore

This commit is contained in:
undefined committed 2024-10-02 05:50:35 +08:00
1 parent f0ecc986d2
commit c3953a3ce7
4 files changed
-61

No files matched your search

@@ -1,16 +0,0 @@
import { addPage, NamedPage } from '@hydrooj/ui-default';
/* global grecaptcha */
addPage(new NamedPage('user_register', () => {
function captcha(event) {
event.preventDefault();
grecaptcha.ready(() => {
grecaptcha.execute(UiContext.recaptchaKey, { action: 'submit' }).then((token) => {
document.getElementById('_captcha').value = token;
document.getElementById('_submit').click();
});
});
}
const element = document.getElementById('submit');
if (element) element.onclick = captcha;
}));
-31
View File
@@ -1,31 +0,0 @@
import {
Context, ForbiddenError, PRIV, superagent, SystemModel, ValidationError,
} from 'hydrooj';
export function apply(ctx: Context) {
ctx.on('handler/before/UserRegister', async (thisArg) => {
if (!SystemModel.get('recaptcha.key')) return;
if (thisArg.request.method !== 'post') {
thisArg.UiContext.recaptchaKey = SystemModel.get('recaptcha.key');
return;
}
if (thisArg.user.hasPriv(PRIV.PRIV_UNLIMITED_ACCESS)) return;
if (!thisArg.args.captcha) throw new ValidationError('captcha');
const response = await superagent.post('https://recaptcha.net/recaptcha/api/siteverify')
.field('secret', SystemModel.get('recaptcha.secret'))
.field('response', thisArg.args.captcha)
.field('remoteip', thisArg.request.ip);
if (!response.body.success) throw new ForbiddenError('Failed to solve the captcha.');
});
ctx.on('handler/after/UserRegister', async (thisArg) => {
thisArg.response.body.captcha = `\
<script src="https://recaptcha.net/recaptcha/api.js?render=${SystemModel.get('recaptcha.key')}"></script>
<input type="text" name="captcha" id="_captcha" style="display:none">
<input type="submit" id="_submit" style="display:none">`;
});
ctx.i18n.load('zh', {
'Failed to solve the captcha': '没有通过 ReCaptcha 验证。',
});
}
-10
View File
@@ -1,10 +0,0 @@
{
"name": "@hydrooj/recaptcha",
"version": "1.2.0",
"description": "Google reCAPTCHA",
"main": "index.ts",
"repository": "https://github.com/hydro-dev/Hydro.git",
"author": "undefined",
"license": "AGPL-3.0-or-later",
"preferUnplugged": true
}
-4
View File
@@ -1,4 +0,0 @@
key:
type: text
secret:
type: text