pacerit/laravel-polish-validation-rules

Simple Polish Validation rules for Laravel and Lumen framework

Downloads

30183

Stars

10

Version

6.1.0

Laravel Polish Validation Rules

GitHub tag (latest by date) GitHub Packagist PHP from Packagist StyleCI Build Status

Simple Polish Validation rules for Laravel and Lumen framework

Installation

You can install this package by composer:

composer require pacerit/laravel-polish-validation-rules

For customize validaiton messages run:

php artisan vendor:publish --provider "PacerIT\LaravelPolishValidationRules\Providers\LaravelPolishValidationRulesServiceProvider"

Version compatibility

Laravel/Lumen

Framework Package Note
5.8.x ^1.x.x No longer maintained.
6.0.x ^2.x.x No longer maintained.
7.x.x ^3.x.x No longer maintained.
8.x.x ^4.x.x PHP ^8.0 Supported from 4.0.3, Bug fixes only.
9.x.x ^5.x.x
10.x.x ^6.x.x

Rules

  1. 'PESEL' - validate PESEL number. We can validate additional parameters:
    • Gender - check if gender value in PESEL
      • gender_male
      • gender_female
    • Birth date - checking if birth date decoded from PESEL number is before or after date defined in rules
      • born_before,Y-m-d - i.e. PESEL:born_before,2022-01-01
      • born_after,Y-m-d - i.e. PESEL:born_after,2000-01-01
  2. 'REGON' - validate REGON number
  3. 'NIP' - validate NIP number
  4. 'id_card_number' - validate Polish ID Card number
  5. 'post_code' - validate Polish post codes. By default accept codes in format 00-000 and 00000. You can change this with options:
    • with_dash - only post codes with format 00-000 are valid
    • without_dash - only post code with format 00000 are valid
  6. 'PWZ' - validate PWZ (Prawo wykonywania zawodu lekarza/farmaceuty) numer (more information HERE)
  7. 'passport_number' - validate Polish passport number

Usage example

Without optional parameters

$validator = Validator::make(
    $request->all(),
    [
        'post_code'  => 'post_code',
        'pesel'      => 'PESEL',
        'nip_number' => 'NIP',
    ]
);

With optional parameters

$validator = Validator::make(
    $request->all(),
    [
        'post_code' => 'post_code:without_dash',
        'pesel'     => 'PESEL:gender_female',
    ]
);

Multiple options

$validator = Validator::make(
    $request->all(),
    [
        'pesel' => 'PESEL:gender_male:born_before,2022-01-01:born_after,2000-01-01',
    ]
);

Code Authors

The algorithms used in the functions are based on existing solutions. Below are links to the sources:

Changelog

Go to the Changelog for a full change history of the package.

Testing

composer test

Security Vulnerabilities

If you discover a security vulnerability within package, please send an e-mail to Wiktor Pacer via [email protected]. All security vulnerabilities will be promptly addressed.

License

This package is open-source software licensed under the MIT license.

pacerit

Author

pacerit