myweatherforecast 0.5.8 → 1.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 62e479b82ee9c8357eb45a0e27f4a6cf18d0c142
4
- data.tar.gz: c41c8f4635d8d15ac0c9a199d1f4e22ebb73769c
2
+ SHA256:
3
+ metadata.gz: f8142fa7d9e5a57ddff1cdc0f427df84f988d7e39da32f396aefc67541b58f50
4
+ data.tar.gz: c8df2087409619441ac6525612a308b6ce1d0980e0e4b16695c7aa3bef4d433a
5
5
  SHA512:
6
- metadata.gz: 212b6d2d50c7669857cb2c7431ec013cdbd3e078b90b6fc5118ddead53e98ce09fcfa8e09154aa5e3c629ddc0731f1e57e0aa444908c75bee35df7915f98369a
7
- data.tar.gz: 4371d61ce5ab1c9d635ff49df16c5ead671e6444abfb374beee5764e98c9f131e29a0232a730dd1fdadf1d45bdcd66e7b6f92ac79bdbbd467d74c3f20fde5fbd
6
+ metadata.gz: 1f0e34e382a7f40da971091163e30794061969798cac4db08db095759c184e6654840743878a2858650877295b09cc135a61c475c2f562199a7871e0e5040c3d
7
+ data.tar.gz: 2ef8e4a635a276fa1bd43ad11d59ad76e0a7342fdfcaa28a30390245bb207fd977ba9a7c55cad2933d63c6977d19363d916ecc21a2157d6a60ce9dc75f800be3
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -5,9 +5,9 @@
5
5
  require 'json'
6
6
  require 'time'
7
7
  require 'geocoder'
8
- require 'forecast_io'
9
8
  require 'open-uri'
10
-
9
+ require 'emoji2020'
10
+ require 'forecast_io'
11
11
 
12
12
 
13
13
  # This gem is a wrapper of the forecast_io gem
@@ -94,7 +94,7 @@ class MyWeatherForecast
94
94
 
95
95
  current_hour = Time.at(@hourly_data[0]['time']).hour + advance
96
96
 
97
- case current_hour
97
+ name = case current_hour
98
98
  when 12..17
99
99
  :afternoon
100
100
  when 0..5
@@ -107,10 +107,33 @@ class MyWeatherForecast
107
107
  :night
108
108
  end
109
109
 
110
+ method(name).call
111
+
110
112
  end
111
113
 
112
- def afternoon() period(12, 17) end
114
+ def afternoon() period(12, 17) end
115
+ def detail() period(0, 23) end
113
116
  def early_hours() period(0, 5) end
117
+
118
+ def emoji()
119
+
120
+ h = {
121
+ 'clear-day' => :sun,
122
+ 'clear-night' => :night_with_stars,
123
+ 'rain' => :cloud_with_rain,
124
+ 'snow' => :cloud_with_snow,
125
+ 'sleet' => :cloud_with_rain,
126
+ 'wind' => :leaf_fluttering_in_wind,
127
+ 'fog' => :fog,
128
+ 'cloudy' => :cloud,
129
+ 'partly-cloudy-day' => :sun_behind_cloud,
130
+ 'partly-cloudy-night' => :cloud
131
+ }
132
+
133
+ Emoji2020.new(h[icon()]).to_s
134
+
135
+ end
136
+
114
137
  def evening() period(17, night_time.hour+1) end
115
138
  def morning() period(6, 12) end
116
139
  def night() period(night_time.hour, 23) end
@@ -222,13 +245,16 @@ class MyWeatherForecast
222
245
 
223
246
  end
224
247
 
248
+ def day()
249
+ Date::ABBR_DAYNAMES[self.time.wday]
250
+ end
251
+
225
252
  def to_s
226
253
 
227
- label = self.time.to_date == Time.now.to_date ? 'Today' : \
228
- Date::ABBR_DAYNAMES[self.time.wday]
229
-
254
+ label = self.time.to_date == Time.now.to_date ? 'Today' : day()
230
255
  mask = @symbols ? "%s: ▽%s ▲%s, %s" : "%s: %s %s, %s"
231
256
  mask % [label, tempmin, tempmax, @x.summary]
257
+
232
258
  end
233
259
 
234
260
  def sunrise()
@@ -310,6 +336,22 @@ class MyWeatherForecast
310
336
  alias wed wednesday
311
337
  alias thu thursday
312
338
  alias fri friday
339
+
340
+ def next_3days()
341
+
342
+ days().take(4)[1..-1].map do |x|
343
+ "%s: %s - %s %s" % [x.time.strftime("%a"), x.tempmin, x.tempmax, x.summary]
344
+ end.join("\n")
345
+
346
+ end
347
+
348
+ def next_5days()
349
+
350
+ days().take(6)[1..-1].map do |x|
351
+ "%s: %s %s" % [x.time.strftime("%a"), x.tempmax, x.summary]
352
+ end.join("\n")
353
+
354
+ end
313
355
 
314
356
  private
315
357
 
@@ -323,4 +365,4 @@ class MyWeatherForecast
323
365
  Daily.new(@forecast, @tlabel, d)
324
366
  end
325
367
 
326
- end
368
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: myweatherforecast
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.8
4
+ version: 1.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -10,28 +10,32 @@ bindir: bin
10
10
  cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
- MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
14
- YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
15
- 8ixkARkWAmV1MB4XDTE1MTAyMjExMzYyMVoXDTE2MTAyMTExMzYyMVowSDESMBAG
16
- A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
17
- EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
18
- ggEBAMleuTWI7tS6RWUJQWbI9pRifVQMJgiTTxmFRrpLBBXnFtp4Dzw/GRlyIlVt
19
- Hs+SOcdYzWbA+7Uto1YA1BHdNvbPHE3t9YUyr5BbZFDwgNtYLZ27kRD7pSD9gyC9
20
- HnwO+y1sfpSNS3fkjlaY7iDUGNlGIkbJQ2biocy9UjNQJCmZQhtZzlFU8bwGiPJf
21
- Lbcd0kluy1ykErfttRg2mrWcEJBEgkol6SSATAiCp+kZUNeQlbZSmvQDsFZd+FJa
22
- Qhjya+OtL4GRxCBWjKeFOMq7lByj6wK6s8Yavi26Qwh1+J1suFjn2tPVwqVx9Fkc
23
- sEqoWSMkdz8w7efnrmF+06lgIskCAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
24
- DwQEAwIEsDAdBgNVHQ4EFgQURRhjt8qerss2WEHGCyHGhkQH97AwJgYDVR0RBB8w
25
- HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
26
- c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEArq5KBg2O
27
- 5PhI7e3N049PuXd3CL2OJoZTZ6kL863VxrMawHz3gigFQ4uEQFn9hWH/SNF8mKTJ
28
- ScICTLpTohfVGlzTDSuvpPKZfkYSkGYcfHGDmD8+Nl3IZcMFHIJ3PjFeGEjM3j8M
29
- i4OEt2c0wVObiZL2E/czP7u541GaFupk63le70iojjFI4KrO7Jlh3T5slxJxusiE
30
- cjf+31b892gC+ztTfY1S1+eVVwkNoQi75FI37AW9ZK/hACBWKaLYiGARpb8WU7II
31
- GwZIa3P1Ea+RT3dq6Es6+k/jkXNYth2ABedYgIgU0DgZpU/JrQ1DcvAA6VGUEwar
32
- ztA769NWsU/h1g==
13
+ MIIEXjCCAsagAwIBAgIBATANBgkqhkiG9w0BAQsFADAsMSowKAYDVQQDDCFnZW1t
14
+ YXN0ZXIvREM9amFtZXNyb2JlcnRzb24vREM9ZXUwHhcNMjAwNDI2MDkwMDEzWhcN
15
+ MjEwNDI2MDkwMDEzWjAsMSowKAYDVQQDDCFnZW1tYXN0ZXIvREM9amFtZXNyb2Jl
16
+ cnRzb24vREM9ZXUwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQDy5Ev/
17
+ +TmmW2Zbqs3nwm1ZKztFwS4HKierISuHHK9LRVUoocJ1HAMt65t9K0FqLHcPw8Cq
18
+ A83Hh6pyOC38Q6xE0bACRz05jL/AKWQU+KF2o9gyph4+b/Y+S51627/nJPaaPl/i
19
+ /AAkCPX+XYZZx6Ts3c4bajWbBZQvduKz+Mgns0HHfZyU4OL9PhjQSpL4w+b53C7I
20
+ rROHOcskWOmKhqD04VLoB0k7IoKQ6iD6AJLGwcLPIEKcQ00F6kiA9lFYUt9Iw/YM
21
+ Ci1W6SO7b80+7nYLeKgYMF3xfZwUB7ZwrIv3oNYZqLmSnk2NlDlibYNOd8CEm51d
22
+ il/LCYqBjsx8hQxddQ7bqckkMHI2aWfnB8CH/l3r7vWvkKrlyWkA+yc5Hain86eu
23
+ qip4E40kzjT1dKNuayS8MWYqD0kGrvZd5J6mm0w1SVSCmk5HVR68WkpNT63IXS5Y
24
+ tqflllrFbf1onOkOw3GOrN+IKGVnBdxZEpgwnROXTnswdUJ7Q8POSiK2Qu8CAwEA
25
+ AaOBijCBhzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUcUjjw62h
26
+ LOtlQ5ITbp0+TWaMl9EwJgYDVR0RBB8wHYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0
27
+ c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1hc3RlckBqYW1lc3JvYmVydHNvbi5ldTAN
28
+ BgkqhkiG9w0BAQsFAAOCAYEAUzolYndXxgA1eH/QTx1gbEK4ay7UW4/BUMZcenlM
29
+ Xx841MdN5yfy91NWeo/Qy0ruxCnNtCvXsVEx6P1TVLaZBxkU/i/H3TgNrOsqgRHz
30
+ 8S428Xg3PTTYkMf27+sLMO8uXmEYeCjrbdEyUBiCtmPht776T2nepwOJNwqgb8x8
31
+ qSMtqEYZxY3x+4Dd9CNf2xQujQ26Q4qyZnzYIuZQb9aHMgAiww3rst8Kxc83pggI
32
+ It47yWd2GhjXd7fv/9MZ0Uhfov+ExsqSr9H0HDjf8KCL+Y9OzNAW7ixpQpXK0pQJ
33
+ i54CNZiaGNwJnBVp9USO7cA5jCKN1Iouaj/Vbie5XXhiGnOZ/cyfna/K/fX10/lh
34
+ JL0NiXQMvY3FTEjgq7BZxit1Q7dE07TH54CD/f5EMNm9v/f5BKVPDF+pfAUrZnKy
35
+ T8ZItjfCqcG6MNMdmPqplYAqpSJzVB9ucdkrz8Ia5Lf1waJw6Dd0m1zHWYSofIH8
36
+ HuG3HnRIMQNQE2s1PFtxmX2w
33
37
  -----END CERTIFICATE-----
34
- date: 2016-02-24 00:00:00.000000000 Z
38
+ date: 2020-07-13 00:00:00.000000000 Z
35
39
  dependencies:
36
40
  - !ruby/object:Gem::Dependency
37
41
  name: forecast_io
@@ -42,7 +46,7 @@ dependencies:
42
46
  version: '2.0'
43
47
  - - ">="
44
48
  - !ruby/object:Gem::Version
45
- version: 2.0.0
49
+ version: 2.0.2
46
50
  type: :runtime
47
51
  prerelease: false
48
52
  version_requirements: !ruby/object:Gem::Requirement
@@ -52,29 +56,49 @@ dependencies:
52
56
  version: '2.0'
53
57
  - - ">="
54
58
  - !ruby/object:Gem::Version
55
- version: 2.0.0
59
+ version: 2.0.2
56
60
  - !ruby/object:Gem::Dependency
57
61
  name: geocoder
58
62
  requirement: !ruby/object:Gem::Requirement
59
63
  requirements:
60
64
  - - "~>"
61
65
  - !ruby/object:Gem::Version
62
- version: '1.2'
66
+ version: '1.6'
63
67
  - - ">="
64
68
  - !ruby/object:Gem::Version
65
- version: 1.2.11
69
+ version: 1.6.3
66
70
  type: :runtime
67
71
  prerelease: false
68
72
  version_requirements: !ruby/object:Gem::Requirement
69
73
  requirements:
70
74
  - - "~>"
71
75
  - !ruby/object:Gem::Version
72
- version: '1.2'
76
+ version: '1.6'
73
77
  - - ">="
74
78
  - !ruby/object:Gem::Version
75
- version: 1.2.11
79
+ version: 1.6.3
80
+ - !ruby/object:Gem::Dependency
81
+ name: emoji2020
82
+ requirement: !ruby/object:Gem::Requirement
83
+ requirements:
84
+ - - "~>"
85
+ - !ruby/object:Gem::Version
86
+ version: '0.2'
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: 0.2.1
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '0.2'
97
+ - - ">="
98
+ - !ruby/object:Gem::Version
99
+ version: 0.2.1
76
100
  description:
77
- email: james@r0bertson.co.uk
101
+ email: james@jamesrobertson.eu
78
102
  executables: []
79
103
  extensions: []
80
104
  extra_rdoc_files: []
@@ -99,8 +123,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
99
123
  - !ruby/object:Gem::Version
100
124
  version: '0'
101
125
  requirements: []
102
- rubyforge_project:
103
- rubygems_version: 2.4.8
126
+ rubygems_version: 3.0.3
104
127
  signing_key:
105
128
  specification_version: 4
106
129
  summary: This gem is a wrapper of the forecast_io gem.
metadata.gz.sig CHANGED
Binary file