|  |  |  | /* | 
					
						
							|  |  |  |  * 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
 | 
					
						
							|  |  |  | })(); |