From e428a34bb98b8263686c91f05b0e54fa288591e0 Mon Sep 17 00:00:00 2001 From: Henrique Moody Date: Mon, 21 Sep 2015 13:26:48 -0300 Subject: [PATCH] Create "CcSubdivisionCode" rule --- .../CcSubdivisionCodeException.php | 31 +++++++++++++++++ .../SubdivisionCode/CcSubdivisionCode.php | 34 +++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 library/Exceptions/SubdivisionCode/CcSubdivisionCodeException.php create mode 100644 library/Rules/SubdivisionCode/CcSubdivisionCode.php diff --git a/library/Exceptions/SubdivisionCode/CcSubdivisionCodeException.php b/library/Exceptions/SubdivisionCode/CcSubdivisionCodeException.php new file mode 100644 index 00000000..8ccb98f8 --- /dev/null +++ b/library/Exceptions/SubdivisionCode/CcSubdivisionCodeException.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 Cocos [Keeling] Islands subdivision code. + * + * ISO 3166-1 alpha-2: CC + */ +class CcSubdivisionCodeException extends SubdivisionCodeException +{ + public static $defaultTemplates = array( + self::MODE_DEFAULT => array( + self::STANDARD => '{{name}} must be a subdivision code of Cocos [Keeling] Islands', + ), + self::MODE_NEGATIVE => array( + self::STANDARD => '{{name}} must not be a subdivision code of Cocos [Keeling] Islands', + ), + ); +} diff --git a/library/Rules/SubdivisionCode/CcSubdivisionCode.php b/library/Rules/SubdivisionCode/CcSubdivisionCode.php new file mode 100644 index 00000000..0fd6fb4c --- /dev/null +++ b/library/Rules/SubdivisionCode/CcSubdivisionCode.php @@ -0,0 +1,34 @@ + + * + * 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 Cocos [Keeling] Islands subdivision code. + * + * ISO 3166-1 alpha-2: CC + * + * @link http://www.geonames.org/CC/administrative-division-cocos-islands.html + */ +class CcSubdivisionCode extends AbstractSearcher +{ + public $haystack = array( + 'D', // Direction Island + 'H', // Home Island + 'O', // Horsburgh Island + 'S', // South Island + 'W', // West Island + ); + + public $compareIdentical = true; +}