diff --git a/library/Exceptions/SubdivisionCode/CuSubdivisionCodeException.php b/library/Exceptions/SubdivisionCode/CuSubdivisionCodeException.php new file mode 100644 index 00000000..0a9233a4 --- /dev/null +++ b/library/Exceptions/SubdivisionCode/CuSubdivisionCodeException.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 Cuba subdivision code. + * + * ISO 3166-1 alpha-2: CU + */ +class CuSubdivisionCodeException extends SubdivisionCodeException +{ + public static $defaultTemplates = array( + self::MODE_DEFAULT => array( + self::STANDARD => '{{name}} must be a subdivision code of Cuba', + ), + self::MODE_NEGATIVE => array( + self::STANDARD => '{{name}} must not be a subdivision code of Cuba', + ), + ); +} diff --git a/library/Rules/SubdivisionCode/CuSubdivisionCode.php b/library/Rules/SubdivisionCode/CuSubdivisionCode.php new file mode 100644 index 00000000..001d991c --- /dev/null +++ b/library/Rules/SubdivisionCode/CuSubdivisionCode.php @@ -0,0 +1,44 @@ + + * + * 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 Cuba subdivision code. + * + * ISO 3166-1 alpha-2: CU + * + * @link http://www.geonames.org/CU/administrative-division-cuba.html + */ +class CuSubdivisionCode extends AbstractSearcher +{ + public $haystack = array( + '01', // Pinar del Rio + '03', // La Habana + '04', // Matanzas + '05', // Villa Clara + '06', // Cienfuegos + '07', // Sancti Spiritus + '08', // Ciego de Avila + '09', // Camaguey + '10', // Las Tunas + '11', // Holguin + '12', // Granma + '13', // Santiago de Cuba + '14', // Guantanamo + '99', // Isla de la Juventud + '02', // La Habana + ); + + public $compareIdentical = true; +}