From 5acea60b1aede95a293ea05ae5fe73967ccb6d96 Mon Sep 17 00:00:00 2001 From: Henrique Moody Date: Mon, 21 Sep 2015 13:27:25 -0300 Subject: [PATCH] Create "MvSubdivisionCode" rule --- .../MvSubdivisionCodeException.php | 31 ++++++++++ .../SubdivisionCode/MvSubdivisionCode.php | 57 +++++++++++++++++++ 2 files changed, 88 insertions(+) create mode 100644 library/Exceptions/SubdivisionCode/MvSubdivisionCodeException.php create mode 100644 library/Rules/SubdivisionCode/MvSubdivisionCode.php diff --git a/library/Exceptions/SubdivisionCode/MvSubdivisionCodeException.php b/library/Exceptions/SubdivisionCode/MvSubdivisionCodeException.php new file mode 100644 index 00000000..af041386 --- /dev/null +++ b/library/Exceptions/SubdivisionCode/MvSubdivisionCodeException.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 Maldives subdivision code. + * + * ISO 3166-1 alpha-2: MV + */ +class MvSubdivisionCodeException extends SubdivisionCodeException +{ + public static $defaultTemplates = array( + self::MODE_DEFAULT => array( + self::STANDARD => '{{name}} must be a subdivision code of Maldives', + ), + self::MODE_NEGATIVE => array( + self::STANDARD => '{{name}} must not be a subdivision code of Maldives', + ), + ); +} diff --git a/library/Rules/SubdivisionCode/MvSubdivisionCode.php b/library/Rules/SubdivisionCode/MvSubdivisionCode.php new file mode 100644 index 00000000..e73e2349 --- /dev/null +++ b/library/Rules/SubdivisionCode/MvSubdivisionCode.php @@ -0,0 +1,57 @@ + + * + * 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 Maldives subdivision code. + * + * ISO 3166-1 alpha-2: MV + * + * @link http://www.geonames.org/MV/administrative-division-maldives.html + */ +class MvSubdivisionCode extends AbstractSearcher +{ + public $haystack = array( + 'CE', // Medhu + 'MLE', // Male + 'NC', // Medhu Uthuru + 'NO', // Uthuru + 'SC', // Medhu Dhekunu + 'SU', // Dhekunu + 'UN', // Mathi Uthuru + 'US', // Mathi Dhekunu + '00', // Alifu Dhaalu / Ari Atholhu Dhekunuburi + '01', // Seenu / Addu Atholhu + '02', // Alifu Alifu / Ari Atholhu Uthuruburi + '03', // Lhaviyani / Faadhippolhu + '04', // Vaavu / Felidhu Atholhu + '05', // Laamu / Haddhdhunmathi + '07', // Haa Alifu / Thiladhunmathee Uthuruburi + '08', // Thaa / Kolhumadulu + '12', // Meemu / Mulakatholhu + '13', // Raa / Maalhosmadulu Uthuruburi + '14', // Faafu / Nilandhe Atholhu Uthuruburi + '17', // Dhaalu / Nilandhe Atholhu Dhekunuburi + '20', // Baa / Maalhosmadulu Dhekunuburi + '23', // Haa Dhaalu / Thiladhunmathee Dhekunuburi + '24', // Shaviyani / Miladhunmadulu Uthuruburi + '25', // Noonu / Miladhunmadulu Dhekunuburi + '26', // Kaafu / Maale Atholhu + '27', // Gaafu Alifu / Huvadhu Atholhu Uthuruburi + '28', // Gaafu Dhaalu / Huvadhu Atholhu Dhekunuburi + '29', // Gnaviyani / Fuvammulah + ); + + public $compareIdentical = true; +}