diff --git a/library/Exceptions/SubdivisionCode/KeSubdivisionCodeException.php b/library/Exceptions/SubdivisionCode/KeSubdivisionCodeException.php new file mode 100644 index 00000000..93cd7626 --- /dev/null +++ b/library/Exceptions/SubdivisionCode/KeSubdivisionCodeException.php @@ -0,0 +1,31 @@ + + * + * For the full copyright and license information, please view the "LICENSE.md" + * file that was distributed with this source code. + */ + +namespace Respect\Validation\Exceptions\SubdivisionCode; + +use Respect\Validation\Exceptions\SubdivisionCodeException; + +/** + * Exception class for Kenya subdivision code. + * + * ISO 3166-1 alpha-2: KE + */ +class KeSubdivisionCodeException extends SubdivisionCodeException +{ + public static $defaultTemplates = array( + self::MODE_DEFAULT => array( + self::STANDARD => '{{name}} must be a subdivision code of Kenya', + ), + self::MODE_NEGATIVE => array( + self::STANDARD => '{{name}} must not be a subdivision code of Kenya', + ), + ); +} diff --git a/library/Rules/SubdivisionCode/KeSubdivisionCode.php b/library/Rules/SubdivisionCode/KeSubdivisionCode.php new file mode 100644 index 00000000..1c854354 --- /dev/null +++ b/library/Rules/SubdivisionCode/KeSubdivisionCode.php @@ -0,0 +1,37 @@ + + * + * For the full copyright and license information, please view the "LICENSE.md" + * file that was distributed with this source code. + */ + +namespace Respect\Validation\Rules\SubdivisionCode; + +use Respect\Validation\Rules\AbstractSearcher; + +/** + * Validator for Kenya subdivision code. + * + * ISO 3166-1 alpha-2: KE + * + * @link http://www.geonames.org/KE/administrative-division-kenya.html + */ +class KeSubdivisionCode extends AbstractSearcher +{ + public $haystack = array( + '110', // Nairobi Area + '200', // Central + '300', // Coast + '400', // Eastern + '500', // North Eastern + '600', // Nyanza + '700', // Rift Valley + '800', // Western + ); + + public $compareIdentical = true; +}