Class: NeetoTimeZones::Utils
- Inherits:
-
Object
- Object
- NeetoTimeZones::Utils
- Defined in:
- lib/neeto_time_zones/utils.rb
Class Method Summary collapse
- .iana_timezone_to_human_readable(iana_time_zone) ⇒ Object
-
.sanitize_timezone(timezone) ⇒ Object
This method sanitizes the browser timezone to the ones supported by ActiveSupport::TimeZone.
- .time_zones ⇒ Object
Class Method Details
.iana_timezone_to_human_readable(iana_time_zone) ⇒ Object
15 16 17 18 |
# File 'lib/neeto_time_zones/utils.rb', line 15 def self.iana_timezone_to_human_readable(iana_time_zone) time_zone = time_zones.find { |time_zone| time_zone[:utc].include?(iana_time_zone) } time_zone&.fetch(:label, nil) end |
.sanitize_timezone(timezone) ⇒ Object
This method sanitizes the browser timezone to the ones supported by ActiveSupport::TimeZone.
21 22 23 |
# File 'lib/neeto_time_zones/utils.rb', line 21 def self.sanitize_timezone(timezone) Constants::TIMEZONES[timezone] || timezone end |
.time_zones ⇒ Object
7 8 9 10 11 12 13 |
# File 'lib/neeto_time_zones/utils.rb', line 7 def self.time_zones base_path = File.("../../data", File.dirname(__FILE__)) time_zone_hash ||= Constants::DATA_FILES.flat_map do |file_name| json_data = File.read(File.join(base_path, file_name)) JSON.parse(json_data, symbolize_names: true) end end |