guiliredu / laravel-simple-recaptcha
Simple Google reCAPTCHA v2 validation and blade directive
Requires
- php: ^7.1
- guzzlehttp/guzzle: ^6.3
- illuminate/support: 5.8.*
Requires (Dev)
- orchestra/testbench: 3.8.*
- phpunit/phpunit: ^7.0
This package is auto-updated.
Last update: 2024-10-24 06:44:46 UTC
README
This package provides a simple reCAPTCHA v2 validation and blade directive to be user with Laravel applications.
Learn more about reCAPTCHA: https://developers.google.com/recaptcha/intro
Installation
You can install the package via composer:
composer require guiliredu/laravel-simple-recaptcha
Usage
Configuration
After intalling the package, publish the config file with the command:
php artisan vendor:publish --provider=Guiliredu\LaravelSimpleRecaptcha\RecaptchaServiceProvider
This will place an recaptcha.php file in the config folder. You can now configure your .env file with the recaptcha parameters:
RECAPTCHA_KEY=... RECAPTCHA_SECRET=...
Blade input and button
You can use the blade files to include and render the recaptcha on your form. As today, this package has 2 ways to render the recaptcha:
Checkbox
This will render the classic "im not a robot" checkbox to the user to click.
@include('recaptcha::input')
You can pass and array of options as a second parameter to the include directive:
@include('recaptcha::input', ['size' => 'normal', 'theme' => 'light', 'tabindex' => 0, 'callback' => 'callback'])
Button
This will render a button with an invisible reCAPTCHA check - You will need to use a callback js function to submit the form.
@include('recaptcha::button', ['callback' => 'jsFunctionToCall'])
Backend validation
To validate the reCAPTCHA you can use our custom request rule:
class StoreController extends Controller { public function store(Request $request) { $this->validate($request, ['g-recaptcha-response' => 'recaptcha'], ['recaptcha' => trans('recaptcha::validation.invalid')] ); } }
We provide some helper methods to run simple validations:
use Guiliredu\LaravelSimpleRecaptcha\Recaptcha; ... dd(Recaptcha::isRequestValid($request)); // true|false dd(Recaptcha::isValid($request->input('g-recaptcha-response'))); // true|false
Testing
composer test
Changelog
Please see CHANGELOG for more information what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security
If you discover any security related issues, please open an issue in this repo issue tracker.
Credits
License
The MIT License (MIT). Please see License File for more information.
Laravel Package Boilerplate
This package was generated using the Laravel Package Boilerplate.