module Weekends::Nearest
Constants
- DAY
Public Instance Methods
nearest_full_weekends(date)
click to toggle source
# File lib/weekends/nearest.rb, line 21 def nearest_full_weekends(date) date = time_coerced(date) if on_date?(date) current_weekend_end = nearest_sunday(date) next_saturday = nearest_saturday(current_weekend_end) next_sunday = nearest_sunday(current_weekend_end) next_saturday..next_sunday else nearest_saturday(date)..nearest_sunday(date) end end
nearest_saturday(date)
click to toggle source
# File lib/weekends/nearest.rb, line 5 def nearest_saturday(date) date = time_coerced(date) wday = date.wday diff = wday == 6 ? 7 : 6 - wday date + diff * DAY end
nearest_sunday(date)
click to toggle source
# File lib/weekends/nearest.rb, line 13 def nearest_sunday(date) date = time_coerced(date) wday = date.wday diff = wday == 7 ? 7 : 7 - wday date + diff * DAY end