| Install | |
|---|---|
composer require evo-mark/evo-laravel-profanity |
|
| Latest Version: | v1.2.0 |
| PHP: | ^8.2 |
This package provides a profanity validation rule that draws on the words made available in the Pest Profanity package.
You can install the package via composer:
composer require evo-mark/evo-laravel-profanity
You can publish the config file with:
php artisan vendor:publish --tag="evo-laravel-profanity-config"
Finally, to download/update the profanity definitions, add this to the composer.json file at the root of your project:
"scripts": {
"post-autoload-dump": [
"Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
"@php artisan profanity:update"
],
}
[!CAUTION] Failure to add the above will result in validation not running with the rule.
The validator uses your current locale for determining which profanity words to check against. Alternatively, you can set this manually in your config file. See the Pest repository for available locales.
To use the validator, simply include the profanity rule in your ruleset.
You can include/exclude additional words by publishing the config and adding them there, e.g.
return [
'includingWords' => [
'en' => ['soccer']
],
'excludingWords' => [
'en' => []
]
];
On failure, the validator will return the message in your lang/{locale}/validation file under the profanity property.
public function store(Request $request)
{
$validated = $request->validate([
'email' => ['required', 'string', 'email'],
'first_name' => ['required', 'string', 'profanity'],
]);
}
We're providing this package free-of-charge. However, all development and maintenance costs time, energy and money. So please help fund this project if you can.
Please see CHANGELOG for more information on what has changed recently.
The MIT Licence (MIT). Please see Licence File for more information.