Method: GeoLocale.country_code
- Defined in:
- lib/geo_locale/country_code.rb
.country_code(ip: "", request_headers: {}) ⇒ Object
ip = “12.12.12.12”
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/geo_locale/country_code.rb', line 6 def self.country_code(ip: "", request_headers: {}) # ip = "12.12.12.12" if request_headers.present? cloudflare_country_code = cloudflare_country_code(request_headers) return cloudflare_country_code.downcase if cloudflare_country_code.present? && cloudflare_country_code != "XX" end return GeoLocale.config.localhost_country if ip == GeoLocale::LOCALHOST_IP && GeoLocale.config.localhost_country.present? country_code = GeoLocale.geo_ip_try(ip) if country_code.present? return country_code else country_code = GeoLocale.geokit_try(ip) if country_code.present? return country_code else # final fallback, config default return GeoLocale.config.default_country end end end |