From ea6efa9164b67cb529da59fb5ba7979d1cccfa4e Mon Sep 17 00:00:00 2001 From: Maikel Linke Date: Tue, 28 Jan 2025 13:12:28 +1100 Subject: [PATCH] Simplify default country code lookup The code was using the code from the environment variables to load a reocrd from the database to then return the initial code again. The only use of `DefaultCountry.code` is currently in the geocoder JS compilation. Now it doesn't need the database anymore. --- app/services/default_country.rb | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/app/services/default_country.rb b/app/services/default_country.rb index 0e07d5c68c..b830f70dcb 100644 --- a/app/services/default_country.rb +++ b/app/services/default_country.rb @@ -5,15 +5,14 @@ class DefaultCountry country.id end + # Two letter code defined in ISO-3166-1. def self.code - country.iso + # Changing ENV requires restarting the process. + ENV.fetch("DEFAULT_COUNTRY_CODE", nil) end def self.country - # Changing ENV requires restarting the process. - iso = ENV.fetch("DEFAULT_COUNTRY_CODE", nil) - # When ENV changes on restart, this cache will be reset as well. - @country ||= Spree::Country.find_by(iso:) || Spree::Country.first + @country ||= Spree::Country.find_by(iso: code) || Spree::Country.first end end