Skip to content

mintellity/residency-validator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

residency-validator

This package can be used to validate addresses.

Installation

Require package in your composer.json:

"repositories": {
  "mintellity/residency-validator": {
    "url": "https://github.com/mintellity/residency-validator.git",
    "type": "git"
  }
},
composer require "mintellity/residency-validator"
php artisan vendor:publish --tag=residency-validator

How to use it

Add the following code to your request classes, which validates an address:

use Illuminate\Validation\Validator;
use Mintellity\ResidencyValidator;

...

public function withValidator(Validator $validator)
    {
        $zip = $validator->getData()['address']['zip'] ?? '';
        $city = $validator->getData()['address']['city'] ?? '';
        $street = $validator->getData()['address']['street'] ?? '';
        $validator->after(
            function ($validator) use ($zip, $city, $street) {
                if (!ResidencyValidator::checkAddress(['zip' => $zip, 'city' => $city])) {
                    $validator->errors()->add(
                        'zip',
                        'Zip does not matches with the city.'
                    );
                    $validator->errors()->add(
                        'city',
                        'City does not matches the with zip.'
                    );
                }else if (!ResidencyValidator::checkAddress(['zip' => $zip, 'city' => $city, 'street' => $street])) {
                    $validator->errors()->add(
                        'street',
                        'Street not found.'
                    );
                }
            }
        );
    }

About

This package can be used to validate addresses.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages