Profanity Validator for Laravel
Go to file
Arandi Lopez d2b5a3c895 Add CONTRIBUTING.md file 2017-10-10 22:14:42 -05:00
src Separation of responsabilities on ProfaneValidator class 2017-10-10 19:07:29 -05:00
tests Separation of responsabilities on ProfaneValidator class 2017-10-10 19:07:29 -05:00
.gitignore Added NL dictionairy 2017-06-20 14:24:35 +02:00
.travis.yml travis php versions ^ 5.6 2017-02-21 13:42:58 -06:00
CONTRIBUTING.md Add CONTRIBUTING.md file 2017-10-10 22:14:42 -05:00
LICENSE add license 2017-05-29 14:44:47 -05:00
README.md Add CONTRIBUTING.md file 2017-10-10 22:14:42 -05:00
composer.json Add require of illuminate/support 5.5 2017-10-10 19:03:24 -05:00
composer.lock Revert "illuminate/support on 5.5" 2017-10-10 18:59:32 -05:00
phpunit.xml I think it's done 2016-07-18 20:20:02 -05:00

README.md

Laravel Profanity Validator

Latest Stable Version Total Downloads License Daily Downloads composer.lock

I made this package to perform a validation for swearwords using Laravel validation service.

Installation

Install via composer

composer require arandilopez/laravel-profane

Configuration

Add the ProfaneServiceProvider class in your config/app.php file.

<?php
return [
    // ...

    'providers' => [
        // ...
        LaravelProfane\ProfaneServiceProvider::class,
    ];

    // ...
];

Publish vendor lang files if you need to replace by your own.

php artisan vendor:publish

Usage

This package register a custom validator. You can use in your controller's validate function.

<?php
// ...
class MyController extends Controller
{
    public function store(Request $request)
    {
        $this->validate($request, [
            'username' => 'required|profane'
        ]);

        // ...
    }
}

The validator will load the default locale in your config/app.php file configuration which by is en. If your locale is not supported, please post an issue for this project

If you want to use others dictionaries you can pass them as parameters in the validator.

<?php
// ...
class MyController extends Controller
{
    public function store(Request $request)
    {
        $this->validate($request, [
            'username' => 'required|profane:es,en'
        ]);

        // ...
    }
}

You can also send as parameter a path of a file which is a dictionary in order to replace the default dictionary or add a new non supported locale.

<?php
// ...
class MyController extends Controller
{
    public function store(Request $request)
    {
        $this->validate($request, [
            'username' => 'required|profane:es,en,'.resource_path('lang/fr/dict.php')
        ]);

        // ...
    }
}

Getting Help

If you're stuck getting something to work, or need to report a bug, please post an issue in the Github Issues for this project.

Contributing

If you're interesting in contributing code to this project, clone it by running:

git clone git@github.com:arandilopez/laravel-profane.git

Please read the CONTRIBUTING file.

Pull requests are welcome, but please make sure you provide unit tests to cover your changes. You can help to add and support more locales!

Thanks to @dorianneto for his contributions.

Supported Locales

License

This project is open-sourced software licensed under the MIT license.