summaryrefslogtreecommitdiff
path: root/data/rbot/plugins/weather.rb
diff options
context:
space:
mode:
authorGiuseppe Bilotta <giuseppe.bilotta@gmail.com>2011-05-11 18:18:04 +0200
committerGiuseppe Bilotta <giuseppe.bilotta@gmail.com>2011-05-11 18:18:04 +0200
commit7d2f6b2aa00632f55df231c72cec7661af8845f1 (patch)
tree717f4de15b9f73cd89497d05c3329ca440a8e1d0 /data/rbot/plugins/weather.rb
parent3e96282cc12d4aacfce314a954ca602f0d89b92a (diff)
weather: URI-encode station
The NWS code assumed that the station could be used as-is in the URL, which is actually true for the station codes accepted by NWS, but incorrect in general. People with NWS as the default weather service would get strange errors about bad URIs if trying something like "weather birmingham, uk". Solve by URI-encoding the station name: even if the resulting URL will still give a 404, at least it doesn't give out odd errors.
Diffstat (limited to 'data/rbot/plugins/weather.rb')
-rw-r--r--data/rbot/plugins/weather.rb2
1 files changed, 1 insertions, 1 deletions
diff --git a/data/rbot/plugins/weather.rb b/data/rbot/plugins/weather.rb
index 0d3abee2..cda68e10 100644
--- a/data/rbot/plugins/weather.rb
+++ b/data/rbot/plugins/weather.rb
@@ -17,7 +17,7 @@ require 'rexml/document'
class CurrentConditions
def initialize(station)
@station = station
- @url = "http://www.nws.noaa.gov/data/current_obs/#{@station.upcase}.xml"
+ @url = "http://www.nws.noaa.gov/data/current_obs/#{URI.encode @station.upcase}.xml"
@etag = String.new
@mtime = Time.mktime(0)
@current_conditions = String.new