diff --git a/library/Exceptions/SubdivisionCode/CaSubdivisionCodeException.php b/library/Exceptions/SubdivisionCode/CaSubdivisionCodeException.php new file mode 100644 index 00000000..a2659926 --- /dev/null +++ b/library/Exceptions/SubdivisionCode/CaSubdivisionCodeException.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 Canada subdivision code. + * + * ISO 3166-1 alpha-2: CA + */ +class CaSubdivisionCodeException extends SubdivisionCodeException +{ + public static $defaultTemplates = array( + self::MODE_DEFAULT => array( + self::STANDARD => '{{name}} must be a subdivision code of Canada', + ), + self::MODE_NEGATIVE => array( + self::STANDARD => '{{name}} must not be a subdivision code of Canada', + ), + ); +} diff --git a/library/Rules/SubdivisionCode/CaSubdivisionCode.php b/library/Rules/SubdivisionCode/CaSubdivisionCode.php new file mode 100644 index 00000000..8ea3a0bd --- /dev/null +++ b/library/Rules/SubdivisionCode/CaSubdivisionCode.php @@ -0,0 +1,42 @@ + + * + * 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 Canada subdivision code. + * + * ISO 3166-1 alpha-2: CA + * + * @link http://www.geonames.org/CA/administrative-division-canada.html + */ +class CaSubdivisionCode extends AbstractSearcher +{ + public $haystack = array( + 'AB', // Alberta + 'BC', // British Columbia + 'MB', // Manitoba + 'NB', // New Brunswick + 'NL', // Newfoundland and Labrador + 'NS', // Nova Scotia + 'NT', // Northwest Territories + 'NU', // Nunavut + 'ON', // Ontario + 'PE', // Prince Edward Island + 'QC', // Quebec + 'SK', // Saskatchewan + 'YT', // Yukon Territory + ); + + public $compareIdentical = true; +}