Sha256: 60a717247dc5a20799288b0e64a05050acfa7cc8a262d1c2472895b6aef73a34
Contents?: true
Size: 1.1 KB
Versions: 2
Compression:
Stored size: 1.1 KB
Contents
module ZoneRanger class Util def self.week_of_month time day_num = time.day days_in_month = Time.days_in_month(time.month) if day_num < 8 1 elsif day_num < 15 2 elsif day_num < 22 3 elsif day_num < days_in_month - 7 4 # fourth but not last else :last # last end end def self.crosses_one_utc_midnight? start, duration # a utc midnight is when the start day is different the blackout ends on day1 = start.utc.to_date day2 = (start + duration.minutes).utc.to_date day1 != day2 end def self.wday_match? date1, date2 date1.wday == date2.wday end def self.calculate_duration_in_minutes starting, ending start_hour = starting.strftime("%H") start_minutes = starting.strftime("%M") start_in_minutes = (start_hour.to_i * 60) + start_minutes.to_i finish_hour = ending.strftime("%H").to_i finish_minutes = (finish_hour * 60) + ending.strftime("%M").to_i d = finish_minutes - start_in_minutes d += 1440 if d < 0 d end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
zone_ranger-0.0.3 | lib/zone_ranger/util.rb |
zone_ranger-0.0.1 | lib/zone_ranger/util.rb |