[[!FormIt?
&hooks=`myrecaptcha2,spam,email,redirect`
&emailTpl=`tpl_kontakt`
&emailTo=`[[!getmaildata]]`
&emailBCC=`[[+fi.email]]`
&emailSubject=`Nachricht an Sie über stroemen.org`
&redirectTo=`41`
&validate=`nachname:required,
email:email:required,
nachricht:required:stripTags`
]]
<?php
include MODX_CORE_PATH.'components/recaptchav2/model/recaptchav2/ReCaptcha/ReCaptcha.php';
$recaptcha = new \ReCaptcha\ReCaptcha("6L..."); //secretcode-numbers
$modx->log(modX::LOG_LEVEL_ERROR, 'Hello'); //testing log
if (empty($recaptcha) || (! $recaptcha instanceof \ReCaptcha\Recaptcha)) {
$modx->log(modX::LOG_LEVEL_ERROR, '[recaptcha2] Instantiation failed');
return '';
}
$resp = $recaptcha->verify($gRecaptchaResponse, $remoteIp);
if ($resp->isSuccess()) {
// verified!
} else {
$errors = $resp->getErrorCodes();
return false;
}
return true;
$file = MODX_CORE_PATH.'components/recaptchav2/model/recaptchav2/ReCaptcha/ReCaptcha.php';
if (!file_exists($file)) {
$modx->log(modX::LOG_LEVEL_ERROR, 'File does not exist: ' . $file);
}<?php
$file = MODX_CORE_PATH.'components/recaptchav2/model/recaptchav2/ReCaptcha/ReCaptcha.php';
if (!file_exists($file)) {
$modx->log(modX::LOG_LEVEL_ERROR, 'File does not exist: ' . $file);
}
else
{
$modx->log(modX::LOG_LEVEL_ERROR, 'File does exist: ' . $file);
}
$recaptcha = new \ReCaptcha\ReCaptcha("6LeJKxsTAAAAADIqvvz1UhipgtEeFNZLA4a7cgEV"); //secretcode-numbers
if (empty($recaptcha) || (! $recaptcha instanceof \ReCaptcha\Recaptcha)) {
$modx->log(modX::LOG_LEVEL_ERROR, '[recaptcha2] Instantiation failed');
return '';
}
$resp = $recaptcha->verify($gRecaptchaResponse, $remoteIp);
if ($resp->isSuccess()) {
// verified!
} else {
$errors = $resp->getErrorCodes();
return false;
}
return true;Hi forum members,
Because of sepiarivers recaptcha2 beta-plugin doesnt work at all for me on Formit etc.
$recaptchav2 = new \ReCaptcha\ReCaptcha($secret, new \ReCaptcha\RequestMethod\CurlPost());
<?php
$file = MODX_CORE_PATH.'components/recaptchav2/model/recaptchav2/ReCaptcha/ReCaptcha.php';
if (!file_exists($file)) {
$modx->log(modX::LOG_LEVEL_ERROR, 'File does not exist: ' . $file);
}
else
{
$modx->log(modX::LOG_LEVEL_ERROR, 'File does exist: ' . $file);
}
$recaptchav2 = new \ReCaptcha\ReCaptcha("6Le..", new \ReCaptcha\RequestMethod\CurlPost()); //secretcode-numbers
if (empty($recaptcha2) || (! $recaptcha2 instanceof \ReCaptcha\Recaptcha)) {
$modx->log(modX::LOG_LEVEL_ERROR, '[recaptcha2] Instantiation failed');
return '';
}
$resp = $recaptcha2->verify($gRecaptchaResponse, $remoteIp);
if ($resp->isSuccess()) {
// verified!
} else {
$errors = $resp->getErrorCodes();
return false;
}
return true;
Thank you Sepia River,
I tried your Package half a day but didnt get it to work. (see issue on github).
Additional info:
I still depend on the package by "instatizing" it as you see.
// Get the class
$recaptchav2Path = $modx->getOption('recaptchav2.core_path', null, $modx->getOption('core_path') . 'components/recaptchav2/');
$recaptchav2Path .= 'model/recaptchav2/';
if (!file_exists($recaptchav2Path . 'autoload.php')) {
$modx->log(modX::LOG_LEVEL_WARN, 'Cannot find required RecaptchaV2 autoload.php file.');
return false;
}
require_once($recaptchav2Path . 'autoload.php');
$recaptchav2 = new \ReCaptcha\ReCaptcha($secret, new \ReCaptcha\RequestMethod\CurlPost());
if (!($recaptchav2 instanceof \ReCaptcha\ReCaptcha)) {
$hook->addError('recaptchav2_error', $tech_err_msg);
$modx->log(modX::LOG_LEVEL_WARN, 'Failed to load recaptchav2 class.');
return false;
}
Also the ReCaptcah API.js link is in my template, otherwise it wouldn't show up.