Class: Time
- Inherits:
-
Object
- Object
- Time
- Defined in:
- lib/weekend_warrior.rb
Class Method Summary collapse
- .next_weekday(original_time = Time.now) ⇒ Object
- .previous_weekday(original_date = Time.now) ⇒ Object
- .weekday(original_time = Time.now) ⇒ Object
Instance Method Summary collapse
Class Method Details
.next_weekday(original_time = Time.now) ⇒ Object
13 14 15 16 17 18 |
# File 'lib/weekend_warrior.rb', line 13 def self.next_weekday(original_time = Time.now) weekdays = 1..5 result = original_time result += 1.day until result > original_time && weekdays.member?(result.wday) result end |
.previous_weekday(original_date = Time.now) ⇒ Object
27 28 29 30 31 32 |
# File 'lib/weekend_warrior.rb', line 27 def self.previous_weekday(original_date = Time.now) weekdays = 1..5 result = original_date result -= 1.day until result < original_date && weekdays.member?(result.wday) result end |
.weekday(original_time = Time.now) ⇒ Object
20 21 22 23 24 25 |
# File 'lib/weekend_warrior.rb', line 20 def self.weekday(original_time = Time.now) weekdays = 1..5 result = original_time result += 1.day until result >= original_time && weekdays.member?(result.wday) result end |
Instance Method Details
#go_back_by_weekdays(num_days) ⇒ Object
45 46 47 48 49 50 51 52 53 54 |
# File 'lib/weekend_warrior.rb', line 45 def go_back_by_weekdays(num_days) past = self.dup num_days.times do past = self.class.previous_weekday(past) end past end |
#go_forward_by_weekdays(num_days) ⇒ Object
34 35 36 37 38 39 40 41 42 43 |
# File 'lib/weekend_warrior.rb', line 34 def go_forward_by_weekdays(num_days) future = self.dup num_days.times do future = self.class.next_weekday(future) end future end |