Commit e7fddaafc0f888202dfcead1c8dbafe41b259419
1 parent
7dd42370
Exists in
to_now
Show until now by default
Showing
1 changed file
with
10 additions
and
7 deletions
Show diff stats
lib/groupdate/magic.rb
@@ -185,6 +185,12 @@ module Groupdate | @@ -185,6 +185,12 @@ module Groupdate | ||
185 | when :month_of_year | 185 | when :month_of_year |
186 | 1..12 | 186 | 1..12 |
187 | else | 187 | else |
188 | + if field == :quarter | ||
189 | + step = 3.months | ||
190 | + else | ||
191 | + step = 1.send(field) | ||
192 | + end | ||
193 | + | ||
188 | time_range = self.time_range | 194 | time_range = self.time_range |
189 | time_range = | 195 | time_range = |
190 | if time_range.is_a?(Range) | 196 | if time_range.is_a?(Range) |
@@ -197,18 +203,15 @@ module Groupdate | @@ -197,18 +203,15 @@ module Groupdate | ||
197 | else | 203 | else |
198 | count.keys.sort | 204 | count.keys.sort |
199 | end | 205 | end |
200 | - sorted_keys.first..sorted_keys.last | 206 | + |
207 | + now = Time.now | ||
208 | + now -= step if options[:current] == false | ||
209 | + sorted_keys.first..[sorted_keys.last, now].max | ||
201 | end | 210 | end |
202 | 211 | ||
203 | if time_range.first | 212 | if time_range.first |
204 | series = [round_time(time_range.first)] | 213 | series = [round_time(time_range.first)] |
205 | 214 | ||
206 | - if field == :quarter | ||
207 | - step = 3.months | ||
208 | - else | ||
209 | - step = 1.send(field) | ||
210 | - end | ||
211 | - | ||
212 | while (next_step = round_time(series.last + step)) && time_range.cover?(next_step) | 215 | while (next_step = round_time(series.last + step)) && time_range.cover?(next_step) |
213 | series << next_step | 216 | series << next_step |
214 | end | 217 | end |