quanzo / bitrix-recaptcha-v3
Invisible recpatcha for bitrix
Installs: 34
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 1
Open Issues: 0
pkg:composer/quanzo/bitrix-recaptcha-v3
Requires
- php: >=7.0
- google/recaptcha: ^1.2
This package is auto-updated.
Last update: 2025-10-29 02:50:23 UTC
README
Модуль не заменяет стандартную капчу.
Установка
Скопировать в папку module в /bitrix/modules/x51.recaptchav3/
Composer
Добавить в composer.json приложения
"require": {
    "quanzo/bitrix-recaptcha-v3": "*"
},
"scripts": {
    "post-package-install": [
        "x51\\bitrix\\module\\recaptchav3\\InstallViaComposer::postPackageInstall"
    ],
    "pre-package-uninstall": [
        x51\\bitrix\\module\\recaptchav3\\InstallViaComposer::prePackageUninstall"
    ]
}
При установке, будет скачан пакет и появится символическая ссылка на модуль в папке bitrix/modules
В адиминстративной панели битрикса модуль надо активировать обычным порядком.
При удалении, символическая ссылка будет убрана. Записи в scripts надо удалить вручную уже после удаления пакета.
Если папка vendor находится вне bitrix, то необходимо дописать
"require": {
    "quanzo/bitrix-recaptcha-v3": "*"
},
"extra": {
    "documentRoot": "/var/www/site/public_html"
},
"scripts": {
    "post-package-install": [
        "x51\\bitrix\\module\\recaptchav3\\InstallViaComposer::postPackageInstall"
    ],
    "pre-package-uninstall": [
        x51\\bitrix\\module\\recaptchav3\\InstallViaComposer::prePackageUninstall"
    ]
}
Настройки модуля
- 
Открытый и секретный ключи для recaptcha 
- 
Оценка пользователя, при которой он считается приемлемым 
- 
Запускать модуль только для определенных URL 
- 
Исключить определенные группы пользователей. Для них оценка всегда 1.0 
- 
Не запускать reСaptcha, если оценка пользователя уже определена 
- 
Запрет на добавление пользователя с низкой оценкой 
- 
Запрет на регистрацию пользователя с низкой оценкой 
- 
Запрет почтовых событий для пользователя с низкой оценкой 
Как работает
- 
К странице сайта подключается recaptcha обычным способом 
- 
Запрашивается токен пользователя 
- 
Отправляется запрос на сервер, к модулю. Затем модуль, по токену, получает оценку пользователя от recaptcha. 
- 
Возвращает 1 - если пользователь, и 0 - если бот. Для оценки используется настройка модуля. 
Как использовать
$request = \Bitrix\Main\Application::getInstance()->getContext()->getRequest();
$validUser = true;
if (\Bitrix\Main\Loader::includeModule('x51.recaptchav3')) {
    $validUser = \x51\bitrix\module\recaptchav3\Main::isValidUser() ? true : false;
}
if (($request->isPost() && $validUser) || !$request->isPost()) {
//здесь компонент отправки формы
} else {
    echo 'Отправка сообщения запрещена!
Обнаружены признаки спама!';
}
Возможно определить js функции.
recaptchaSuccess(data) - будет вызвана при удачной передаче токена на сайт через ajax запрос. data будет содержать 1 или 0
recaptchaError(request, status) - будет вызвана при неудачной передаче токена на сайт через ajax запрос