Skip to content

ryanwinchester/laravel-spamguard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SpamGuard

Guarding form requests against bots.

Version License Downloads Quality Travis

Install

composer require fungku/spamguard

Add the service provider to config/app.php in the providers array:

Fungku\SpamGuard\Providers\SpamGuardServiceProvider::class,

Add the alias to config/app.php in the aliases array:

'SpamGuard' => Fungku\SpamGuard\Facades\SpamGuard::class,

Config (optional)

If you'd like to change the default package config values, then publish the config and change the defaults...

php artisan vendor:publish --provider="Fungku\SpamGuard\Providers\SpamGuardConfigServiceProvider" --tag="config"

Usage

To use the spamguard, there are two things you need to do.

1. Add the SpamGuard form elements in your form

Somewhere inside your form, just use SpamGuard::html().

Using all spam guard elements:

<form action="/some-route/action">

    {!! SpamGuard::html() !!}

    <!-- other form elements -->

</form>

Specifying specific elements:

<form action="/some-route/action">

    {!! SpamGuard::html(['spam_honeypot', 'spam_timer', 'spam_recaptcha']) !!}

    <!-- other form elements -->

</form>

2. Add the SpamGuard middleware to your route or controller

Specifying specific middlewares:

class MyController extends Controller
{
    public function __construct()
    {
        $this->middleware('spam_honeypot');
        $this->middleware('spam_timer');
        $this->middleware('spam_recaptcha');
    }
}

Using all spam middleware:

$this->middleware('spamguard');

Using the spam_timer middleware in a controller normally and overriding the min_time and max_time for a specific action:

$this->middleware('spam_timer:10,300', ['only' => 'postComment']);

Options

Currently there are four spam middleware registered:

  • spam_honeypot
  • spam_timer
  • spam_recaptcha
  • spamguard: A catch-all of all the available SpamGuard middleware listed above.

Notes

If you are selectively using elements and middleware, please note that the elements you use must match up with the middleware you assign to the routes.

About

Guarding form requests from spam bots.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages