Class: BusinessTime::BusinessDays
- Inherits:
-
Object
- Object
- BusinessTime::BusinessDays
- Defined in:
- lib/business_time/business_days.rb
Instance Method Summary collapse
- #after(time = Time.now) ⇒ Object (also: #from_now, #since)
- #before(time = Time.now) ⇒ Object (also: #ago, #until)
-
#initialize(days) ⇒ BusinessDays
constructor
A new instance of BusinessDays.
Constructor Details
#initialize(days) ⇒ BusinessDays
Returns a new instance of BusinessDays.
4 5 6 |
# File 'lib/business_time/business_days.rb', line 4 def initialize(days) @days = days end |
Instance Method Details
#after(time = Time.now) ⇒ Object Also known as: from_now, since
8 9 10 11 12 13 14 15 16 |
# File 'lib/business_time/business_days.rb', line 8 def after(time = Time.now) time = Time.zone ? Time.zone.parse(time.to_s) : Time.parse(time.to_s) days = @days while days > 0 || !Time.workday?(time) days -= 1 if Time.workday?(time) time = time + 1.day end time end |
#before(time = Time.now) ⇒ Object Also known as: ago, until
21 22 23 24 25 26 27 28 29 |
# File 'lib/business_time/business_days.rb', line 21 def before(time = Time.now) time = Time.zone ? Time.zone.parse(time.to_s) : Time.parse(time.to_s) days = @days while days > 0 || !Time.workday?(time) days -= 1 if Time.workday?(time) time = time - 1.day end time end |