Бесплатно
Загрузите дополнение из админки вашего сайта.
Как загрузить?
Как загрузить?
Для работы компонента нужно добавить хук rcv3 в hooks вызова FormIt / AjaxForm (самым первым) и сниппет rcv3_html в форму (внутри тэга form):
Или на Fenom:
Данный сниппет добавляет в форму input и регистрирует js-скрипты.
В системных настройках Formit указать ключи:
Получить ключи можно на этой странице https://www.google.com/recaptcha/admin.
Параметр rcv3Action предназначен для изменения идентификатора action. Подробнее в документации: https://developers.google.com/recaptcha/docs/v3#actions
[[!rcv3_html? &action=`[[+rcv3Action:default=``]]` &error=`[[+fi.error.g-recaptcha-response]]`]]Или на Fenom:
{'!rcv3_html' | snippet : [
'action' => $rcv3Action,
'error' => $_modx->getPlaceholder('fi.error.g-recaptcha-response'),
]}Данный сниппет добавляет в форму input и регистрирует js-скрипты.
В системных настройках Formit указать ключи:
- секретный — formit.recaptcha_private_key
- и публичный — formit.recaptcha_public_key
Получить ключи можно на этой странице https://www.google.com/recaptcha/admin.
Пример вызова:
{'!AjaxForm' | snippet : [
'snippet' => 'FormIt',
'form' => 'tpl.AjaxForm.example',
'emailTpl' => 'contactEmailTpl',
'hooks' => 'rcv3,email',
'emailFrom' => $_modx->config.emailsender,
'emailFromName' => $_modx->config.site_name,
'emailSubject' => 'Сообщение с сайта' ~ $_modx->config.site_name,
'emailTo' => $_modx->config.emailsender,
'validate' => 'name:required',
'validationErrorMessage' => 'В форме содержатся ошибки!',
'successMessage' => 'Сообщение успешно отправлено',
'rcv3Action' => 'contactform',
]}Параметр rcv3Action предназначен для изменения идентификатора action. Подробнее в документации: https://developers.google.com/recaptcha/docs/v3#actions
Пример чанка формы:
<form action="" method="post" class="ajax_form af_example">
<div class="form-group">
<label class="control-label" for="af_name">[[%af_label_name]]</label>
<div class="controls">
<input type="text" id="af_name" name="name" value="[[+fi.name]]" placeholder="" class="form-control"/>
<span class="error_name">[[+fi.error.name]]</span>
</div>
</div>
<div class="form-group">
<label class="control-label" for="af_email">[[%af_label_email]]</label>
<div class="controls">
<input type="email" id="af_email" name="email" value="[[+fi.email]]" placeholder="" class="form-control"/>
<span class="error_email">[[+fi.error.email]]</span>
</div>
</div>
<div class="form-group">
<label class="control-label" for="af_message">[[%af_label_message]]</label>
<div class="controls">
<textarea id="af_message" name="message" class="form-control" rows="5">[[+fi.message]]</textarea>
<span class="error_message">[[+fi.error.message]]</span>
</div>
</div>
<div class="form-group">
<div class="controls">
<button type="reset" class="btn btn-default">[[%af_reset]]</button>
<button type="submit" class="btn btn-primary">[[%af_submit]]</button>
</div>
</div>
[[!rcv3_html? &action=`[[+rcv3Action:default=``]]` &error=`[[+fi.error.g-recaptcha-response]]`]]
</form> 1.0.11
- Refactor action and form_id handling от @ilyautkin
1.0.10
- Fixes for multiple forms on one page от Sterc @MrRoco
1.0.9
- fix от Sterc @MrRoco
1.0.8
- релиз от Sterc @MrRoco
1.0.7
- добавлена проверка скоринга, спасибо @alexsoin за pull request
1.0.6
- Удален лишний класс у span с сообщением об ошибке
1.0.5
- Обновление капчи каждую минуту
1.0.4
- Исправлены возможные проблемы с инициализацией капчи, спасибо Boshnik за Pull request
1.0.3
- Добавлена возможность использовать несколько форм на странице.
1.0.2
- Добавлены лексиконы.
- Изменены тексты сообщений об ошибках.
- Исправлена возможность обхода капчи. Спасибо Дмитрию (GoodSite) за багрепорт.
1.0.1
- Мелкие исправления.
1.0.0
- Релиз.



Последние обсуждения в сообществе MODX.pro