Sha256: fcc70bd95a472a59b94fa758491389f3f012e627d826a9ea04ed85209f0eb654

Contents?: true

Size: 1.02 KB

Versions: 3

Compression:

Stored size: 1.02 KB

Contents

module GeoNamesAPI
  class Weather < GeoNamesAPI::Object
    
    METHOD = "findNearByWeatherJSON"
    ID = ["lat", "lng"]
    
    def geo_names_api_country
      @geo_names_api_country ||= GeoNamesAPI::Country.find(country_code)
    end
    
    def geo_names_api_time_zone
      @geo_names_api_time_zone ||= GeoNamesAPI::TimeZone.find(lat, lng)
    end
    
    def time_zone
      geo_names_api_time_zone.time_zone
    end
        
    def at_local
      t = DateTime.parse(datetime)
      time_zone.local(t.year, t.month, t.day, t.hour, t.minute)
    end
    
    def at_utc
      at_local.utc
    end
    
    def elevation_feet
      elevation * 3.28084
    end
    
    def elevation_meters
      elevation
    end
        
    def convert_c_to_f(temp)
      temp * 9.to_f / 5.to_f + 32
    end

    def temperature_f
      convert_c_to_f(temperature)
    end
    
    def temperature_c
      temperature
    end
    
    def dew_point_f
      convert_c_to_f(dew_point)
    end
    
    def dew_point_c
      dew_point
    end
    
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
geonames_api-0.0.5 lib/geonames_api/weather.rb
geonames_api-0.0.4 lib/geonames_api/weather.rb
geonames_api-0.0.3 lib/geonames_api/weather.rb