enjoys / forms-recaptcha
Addon for enjoys/forms
Installs: 1 611
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/enjoys/forms-recaptcha
Requires
- php: ^8.0
- enjoys/forms: ^5.5
- psr/http-client: ^1.0
- psr/http-factory: ^1.0
Requires (Dev)
- guzzlehttp/guzzle: ^7.5
- infection/infection: ^0.26
- phpunit/phpunit: ^9.5
- squizlabs/php_codesniffer: ^3.6
- symfony/var-dumper: ^5.4
README
addon for enjoys/forms
Run built-in server for view example
php -S localhost:8000 -t ./example .route
Usage
// ...before code // Optional. Set ID for form (for V2Invisible and V3) $form->setAttribute(AttributeFactory::create('id', uniqid())); // Init reCaptcha $captcha = new reCaptcha($Psr18_HttpClient, $Psr7RequestFactory, $Psr7StreamFactory); $captcha->setOptions([ 'type' => V3::class, //V2Invisible, V2, V3 'publicKey' => '...', 'privateKey' => '...', 'submitEl' => 'submit1', // more options ... ]); $form->captcha($captcha); $form->submit('submit1'); // more code...
Global options
- privateKey
stringrequiredprivateKey - publicKey
stringrequiredpublicKey - language
stringLanguagedefault: en - type
stringTypedefault: \Enjoys\Forms\Captcha\reCaptcha\Type\V2
reCAPTCHA v2
widgets options
- data-theme
stringdark|lightOptional. The color theme of the widget.default: light - data-size
stringcompact|normalOptional. The size of the widget.default: normal - data-tabindex
stringOptional. The tabindex of the widget and challenge. If other elements in your page use tabindex, it should be set to make user navigation easier.default: null - data-callback
stringOptional. The name of your callback function, executed when the user submits a successful response. The g-recaptcha-response token is passed to your callback.default: null - data-expired-callback
stringOptional. The name of your callback function, executed when the reCAPTCHA response expires and the user needs to re-verify.default: null - data-error-callback
stringOptional. The name of your callback function, executed when reCAPTCHA encounters an error (usually network connectivity) and cannot continue until connectivity is restored. If you specify a function here, you are responsible for informing the user that they should retry.default: null
Invisible reCAPTCHA & reCAPTCHA v3
general options
- submitEl
stringThe element submit name. Also, the submit button ID should not besubmit - The form must have an ID attribute.
- type
\Enjoys\Forms\Captcha\reCaptcha\Type\V2Invisible or V2Invisible::classfor Invisible reCAPTCHCA,\Enjoys\Forms\Captcha\reCaptcha\Type\V3 or V3::classfor reCAPTCHA v3
widgets options
- data-badge
stringbottomright|bottomleft|inlineOptional. Reposition the reCAPTCHA badge. 'inline' lets you position it with CSS.default: bottomright - data-size
stringinvisibleOptional. Used to create an invisible widget bound to a div and programmatically executed.default: null - data-tabindex
stringOptional. The tabindex of the widget and challenge. If other elements in your page use tabindex, it should be set to make user navigation easier.default: null - data-callback
stringOptional. The name of your callback function, executed when the user submits a successful response. The g-recaptcha-response token is passed to your callback.default: null - data-expired-callback
stringOptional. The name of your callback function, executed when the reCAPTCHA response expires and the user needs to re-verify.default: null - data-error-callback
stringOptional. The name of your callback function, executed when reCAPTCHA encounters an error (usually network connectivity) and cannot continue until connectivity is restored. If you specify a function here, you are responsible for informing the user that they should retry.default: null