Module: Workhours::Util

Included in:
Workhours
Defined in:
lib/workhours/util.rb

Instance Method Summary collapse

Instance Method Details

#int_to_wday(num) ⇒ Object



7
8
9
# File 'lib/workhours/util.rb', line 7

def int_to_wday(num)
  ALL_DAYS[num]
end

#is_today?(day_name, time) ⇒ Boolean

Returns:

  • (Boolean)


18
19
20
# File 'lib/workhours/util.rb', line 18

def is_today?(day_name, time)
  time.wday == wday_to_int(day_name)
end

#is_tomorrow?(day_name, time) ⇒ Boolean

Returns:

  • (Boolean)


21
22
23
# File 'lib/workhours/util.rb', line 21

def is_tomorrow?(day_name, time)
  time.wday == wday_to_int(next_day(day_name))
end

#is_yesterday?(day_name, time) ⇒ Boolean

Returns:

  • (Boolean)


24
25
26
# File 'lib/workhours/util.rb', line 24

def is_yesterday?(day_name, time)
  time.wday == wday_to_int(prev_day(day_name))
end

#next_day(day_name) ⇒ Object



11
12
13
# File 'lib/workhours/util.rb', line 11

def next_day(day_name)
  int_to_wday((wday_to_int(day_name) + 1) % 7)
end

#prev_day(day_name) ⇒ Object



14
15
16
# File 'lib/workhours/util.rb', line 14

def prev_day(day_name)
  int_to_wday((wday_to_int(day_name) + 6) % 7)
end

#wday_to_int(day_name) ⇒ Object



3
4
5
# File 'lib/workhours/util.rb', line 3

def wday_to_int(day_name)
  ALL_DAYS.find_index(day_name.to_s.downcase)
end