123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295 |
- /*
- * vim: ts=4:sw=4:expandtab
- */
- ;(function() {
- "use strict";
- /*
- * This file extends the libphonenumber object with a set of phonenumbery
- * utility functions. libphonenumber must be included before you call these
- * functions, but the order of the files/script-tags doesn't matter.
- */
- window.libphonenumber = window.libphonenumber || {};
- window.libphonenumber.util = {
- getRegionCodeForNumber: function(number) {
- try {
- var parsedNumber = libphonenumber.parse(number);
- return libphonenumber.getRegionCodeForNumber(parsedNumber);
- } catch(e) {
- return "ZZ";
- }
- },
- splitCountryCode: function(number) {
- var parsedNumber = libphonenumber.parse(number);
- return {
- country_code: parsedNumber.values_[1],
- national_number: parsedNumber.values_[2]
- };
- },
- getCountryCode: function(regionCode) {
- var cc = libphonenumber.getCountryCodeForRegion(regionCode);
- return (cc !== 0) ? cc : "";
- },
- parseNumber: function(number, defaultRegionCode) {
- try {
- var parsedNumber = libphonenumber.parse(number, defaultRegionCode);
- return {
- isValidNumber: libphonenumber.isValidNumber(parsedNumber),
- regionCode: libphonenumber.getRegionCodeForNumber(parsedNumber),
- countryCode: '' + parsedNumber.getCountryCode(),
- nationalNumber: '' + parsedNumber.getNationalNumber(),
- e164: libphonenumber.format(parsedNumber, libphonenumber.PhoneNumberFormat.E164)
- };
- } catch (ex) {
- return { error: ex, isValidNumber: false };
- }
- },
- getAllRegionCodes: function() {
- return {
- "AD":"Andorra",
- "AE":"United Arab Emirates",
- "AF":"Afghanistan",
- "AG":"Antigua and Barbuda",
- "AI":"Anguilla",
- "AL":"Albania",
- "AM":"Armenia",
- "AO":"Angola",
- "AR":"Argentina",
- "AS":"AmericanSamoa",
- "AT":"Austria",
- "AU":"Australia",
- "AW":"Aruba",
- "AX":"Åland Islands",
- "AZ":"Azerbaijan",
- "BA":"Bosnia and Herzegovina",
- "BB":"Barbados",
- "BD":"Bangladesh",
- "BE":"Belgium",
- "BF":"Burkina Faso",
- "BG":"Bulgaria",
- "BH":"Bahrain",
- "BI":"Burundi",
- "BJ":"Benin",
- "BL":"Saint Barthélemy",
- "BM":"Bermuda",
- "BN":"Brunei Darussalam",
- "BO":"Bolivia, Plurinational State of",
- "BR":"Brazil",
- "BS":"Bahamas",
- "BT":"Bhutan",
- "BW":"Botswana",
- "BY":"Belarus",
- "BZ":"Belize",
- "CA":"Canada",
- "CC":"Cocos (Keeling) Islands",
- "CD":"Congo, The Democratic Republic of the",
- "CF":"Central African Republic",
- "CG":"Congo",
- "CH":"Switzerland",
- "CI":"Cote d'Ivoire",
- "CK":"Cook Islands",
- "CL":"Chile",
- "CM":"Cameroon",
- "CN":"China",
- "CO":"Colombia",
- "CR":"Costa Rica",
- "CU":"Cuba",
- "CV":"Cape Verde",
- "CX":"Christmas Island",
- "CY":"Cyprus",
- "CZ":"Czech Republic",
- "DE":"Germany",
- "DJ":"Djibouti",
- "DK":"Denmark",
- "DM":"Dominica",
- "DO":"Dominican Republic",
- "DZ":"Algeria",
- "EC":"Ecuador",
- "EE":"Estonia",
- "EG":"Egypt",
- "ER":"Eritrea",
- "ES":"Spain",
- "ET":"Ethiopia",
- "FI":"Finland",
- "FJ":"Fiji",
- "FK":"Falkland Islands (Malvinas)",
- "FM":"Micronesia, Federated States of",
- "FO":"Faroe Islands",
- "FR":"France",
- "GA":"Gabon",
- "GB":"United Kingdom",
- "GD":"Grenada",
- "GE":"Georgia",
- "GF":"French Guiana",
- "GG":"Guernsey",
- "GH":"Ghana",
- "GI":"Gibraltar",
- "GL":"Greenland",
- "GM":"Gambia",
- "GN":"Guinea",
- "GP":"Guadeloupe",
- "GQ":"Equatorial Guinea",
- "GR":"Ελλάδα",
- "GT":"Guatemala",
- "GU":"Guam",
- "GW":"Guinea-Bissau",
- "GY":"Guyana",
- "HK":"Hong Kong",
- "HN":"Honduras",
- "HR":"Croatia",
- "HT":"Haiti",
- "HU":"Magyarország",
- "ID":"Indonesia",
- "IE":"Ireland",
- "IL":"Israel",
- "IM":"Isle of Man",
- "IN":"India",
- "IO":"British Indian Ocean Territory",
- "IQ":"Iraq",
- "IR":"Iran, Islamic Republic of",
- "IS":"Iceland",
- "IT":"Italy",
- "JE":"Jersey",
- "JM":"Jamaica",
- "JO":"Jordan",
- "JP":"Japan",
- "KE":"Kenya",
- "KG":"Kyrgyzstan",
- "KH":"Cambodia",
- "KI":"Kiribati",
- "KM":"Comoros",
- "KN":"Saint Kitts and Nevis",
- "KP":"Korea, Democratic People's Republic of",
- "KR":"Korea, Republic of",
- "KW":"Kuwait",
- "KY":"Cayman Islands",
- "KZ":"Kazakhstan",
- "LA":"Lao People's Democratic Republic",
- "LB":"Lebanon",
- "LC":"Saint Lucia",
- "LI":"Liechtenstein",
- "LK":"Sri Lanka",
- "LR":"Liberia",
- "LS":"Lesotho",
- "LT":"Lithuania",
- "LU":"Luxembourg",
- "LV":"Latvia",
- "LY":"Libyan Arab Jamahiriya",
- "MA":"Morocco",
- "MC":"Monaco",
- "MD":"Moldova, Republic of",
- "ME":"Црна Гора",
- "MF":"Saint Martin",
- "MG":"Madagascar",
- "MH":"Marshall Islands",
- "MK":"Macedonia, The Former Yugoslav Republic of",
- "ML":"Mali",
- "MM":"Myanmar",
- "MN":"Mongolia",
- "MO":"Macao",
- "MP":"Northern Mariana Islands",
- "MQ":"Martinique",
- "MR":"Mauritania",
- "MS":"Montserrat",
- "MT":"Malta",
- "MU":"Mauritius",
- "MV":"Maldives",
- "MW":"Malawi",
- "MX":"Mexico",
- "MY":"Malaysia",
- "MZ":"Mozambique",
- "NA":"Namibia",
- "NC":"New Caledonia",
- "NE":"Niger",
- "NF":"Norfolk Island",
- "NG":"Nigeria",
- "NI":"Nicaragua",
- "NL":"Netherlands",
- "NO":"Norway",
- "NP":"Nepal",
- "NR":"Nauru",
- "NU":"Niue",
- "NZ":"New Zealand",
- "OM":"Oman",
- "PA":"Panama",
- "PE":"Peru",
- "PF":"French Polynesia",
- "PG":"Papua New Guinea",
- "PH":"Philippines",
- "PK":"Pakistan",
- "PL":"Polska",
- "PM":"Saint Pierre and Miquelon",
- "PR":"Puerto Rico",
- "PS":"Palestinian Territory, Occupied",
- "PT":"Portugal",
- "PW":"Palau",
- "PY":"Paraguay",
- "QA":"Qatar",
- "RE":"Réunion",
- "RO":"Romania",
- "RS":"Србија",
- "RU":"Russia",
- "RW":"Rwanda",
- "SA":"Saudi Arabia",
- "SB":"Solomon Islands",
- "SC":"Seychelles",
- "SD":"Sudan",
- "SE":"Sweden",
- "SG":"Singapore",
- "SH":"Saint Helena, Ascension and Tristan Da Cunha",
- "SI":"Slovenia",
- "SJ":"Svalbard and Jan Mayen",
- "SK":"Slovakia",
- "SL":"Sierra Leone",
- "SM":"San Marino",
- "SN":"Senegal",
- "SO":"Somalia",
- "SR":"Suriname",
- "ST":"Sao Tome and Principe",
- "SV":"El Salvador",
- "SY":"Syrian Arab Republic",
- "SZ":"Swaziland",
- "TC":"Turks and Caicos Islands",
- "TD":"Chad",
- "TG":"Togo",
- "TH":"Thailand",
- "TJ":"Tajikistan",
- "TK":"Tokelau",
- "TL":"Timor-Leste",
- "TM":"Turkmenistan",
- "TN":"Tunisia",
- "TO":"Tonga",
- "TR":"Turkey",
- "TT":"Trinidad and Tobago",
- "TV":"Tuvalu",
- "TW":"Taiwan, Province of China",
- "TZ":"Tanzania, United Republic of",
- "UA":"Ukraine",
- "UG":"Uganda",
- "US":"United States",
- "UY":"Uruguay",
- "UZ":"Uzbekistan",
- "VA":"Holy See (Vatican City State)",
- "VC":"Saint Vincent and the Grenadines",
- "VE":"Venezuela",
- "VG":"Virgin Islands, British",
- "VI":"Virgin Islands, U.S.",
- "VN":"Viet Nam",
- "VU":"Vanuatu",
- "WF":"Wallis and Futuna",
- "WS":"Samoa",
- "YE":"Yemen",
- "YT":"Mayotte",
- "ZA":"South Africa",
- "ZM":"Zambia",
- "ZW":"Zimbabwe"
- };
- } // getAllRegionCodes
- }; // libphonenumber.util
- })();
|