module TransitDerby
Constants
- EVENING_END
- EVENING_START
- MORNING_END
- MORNING_START
Public Instance Methods
Source
# File lib/transit_derby.rb, line 29 def melbourne_peak_hour?(time: Time.now) peak_minutes?(time: time, zone: melbourne_zone) end
Source
# File lib/transit_derby.rb, line 13 def melbourne_zone @melbourne_zone ||= TZInfo::Timezone.get("Australia/Melbourne") end
Source
# File lib/transit_derby.rb, line 21 def peak_minutes?(time:, zone:) local = zone.utc_to_local(time.utc) return false unless local.wday.between?(1, 5) minutes = (local.hour * 60) + local.min (MORNING_START...MORNING_END).cover?(minutes) || (EVENING_START...EVENING_END).cover?(minutes) end
Source
# File lib/transit_derby.rb, line 33 def sydney_peak_hour?(time: Time.now) peak_minutes?(time: time, zone: sydney_zone) end
Source
# File lib/transit_derby.rb, line 17 def sydney_zone @sydney_zone ||= TZInfo::Timezone.get("Australia/Sydney") end