diff --git a/library/Exceptions/SubdivisionCode/EgSubdivisionCodeException.php b/library/Exceptions/SubdivisionCode/EgSubdivisionCodeException.php new file mode 100644 index 00000000..7d677d65 --- /dev/null +++ b/library/Exceptions/SubdivisionCode/EgSubdivisionCodeException.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 Egypt subdivision code. + * + * ISO 3166-1 alpha-2: EG + */ +class EgSubdivisionCodeException extends SubdivisionCodeException +{ + public static $defaultTemplates = array( + self::MODE_DEFAULT => array( + self::STANDARD => '{{name}} must be a subdivision code of Egypt', + ), + self::MODE_NEGATIVE => array( + self::STANDARD => '{{name}} must not be a subdivision code of Egypt', + ), + ); +} diff --git a/library/Rules/SubdivisionCode/EgSubdivisionCode.php b/library/Rules/SubdivisionCode/EgSubdivisionCode.php new file mode 100644 index 00000000..ffd7a51b --- /dev/null +++ b/library/Rules/SubdivisionCode/EgSubdivisionCode.php @@ -0,0 +1,58 @@ + + * + * 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 Egypt subdivision code. + * + * ISO 3166-1 alpha-2: EG + * + * @link http://www.geonames.org/EG/administrative-division-egypt.html + */ +class EgSubdivisionCode extends AbstractSearcher +{ + public $haystack = array( + 'ALX', // Al Iskandariyah + 'ASN', // Aswan + 'AST', // Asyut + 'BA', // Al Bahr al Ahmar + 'BH', // Al Buhayrah + 'BNS', // Bani Suwayf + 'C', // Al Qahirah + 'DK', // Ad Daqahliyah + 'DT', // Dumyat + 'FYM', // Al Fayyum + 'GH', // Al Gharbiyah + 'GZ', // Al Jizah + 'IS', // Al Isma'iliyah + 'JS', // Janub Sina' + 'KB', // Al Qalyubiyah + 'KFS', // Kafr ash Shaykh + 'KN', // Qina + 'LX', // Al Uqşur + 'MN', // Al Minya + 'MNF', // Al Minufiyah + 'MT', // Matruh + 'PTS', // Bur Sa'id + 'SHG', // Suhaj + 'SHR', // Ash Sharqiyah + 'SIN', // Shamal Sina' + 'SUZ', // As Suways + 'WAD', // Al Wadi al Jadid + 'HU', // Helwan + 'SU', // As Sādis min Uktūbar + ); + + public $compareIdentical = true; +}