var ipInfo = localStorage.getItem('ipInfo'); if(!ipInfo) { $.get("https://ipinfo.io", function() {}, "jsonp").always(function(resp) { if(resp) { var ipInfoStr = JSON.stringify(resp); var ipInfoField = document.getElementById("ipInfo"); var countryCode = (resp.country) ? resp.country : "in"; sessionStorage.setItem('countryCode', countryCode); if('statusText' in resp) { if((resp['statusText'] !== 'error') && ('ip' in resp)) { localStorage.setItem('ipInfo', ipInfoStr); if(ipInfoField) { ipInfoField.value = ipInfoStr; } } } else if('ip' in resp) { localStorage.setItem('ipInfo', ipInfoStr); if(ipInfoField) { ipInfoField.value = ipInfoStr; } } } }) } $("#sphone").intlTelInput({ initialCountry: "auto", geoIpLookup: function(callback) { var scountryCode = sessionStorage.getItem('countryCode'); if(scountryCode !== null) { callback(scountryCode); }else { $.get("https://ipinfo.io", function() {}, "jsonp").always(function(resp) { var countryCode = (resp && resp.country) ? resp.country : "in"; callback(countryCode); sessionStorage.setItem('countryCode', countryCode); }); } }, preferredCountries: ["in", "us"], separateDialCode: true, utilsScript: "/resources/js/intlUtils.js" });