Sha256: 92c85429477d265718dc66a3467ba9a77bc058db0957ad01524981f5f0798582
Contents?: true
Size: 1.18 KB
Versions: 3
Compression:
Stored size: 1.18 KB
Contents
module ByStar module Kernel module Date # A "Weekend" is defined as beginning of Saturday to end of Sunday. # The weekend for a given date will be the the next weekend if the day Mon-Thurs, # otherwise the current weekend if the day is Fri-Sun. def beginning_of_weekend beginning_of_week(:monday).advance(days: 5) end def end_of_weekend beginning_of_weekend + 1 end # A "Fortnight" is defined as a two week period, with the first fortnight of the # year beginning on 1st January. def beginning_of_fortnight beginning_of_year + 14 * ((self - beginning_of_year) / 14).to_i end def end_of_fortnight beginning_of_fortnight + 13 end # A "Calendar Month" is defined as a month as it appears on a calendar, including days form # previous/following months which are part of the first/last weeks of the given month. def beginning_of_calendar_month(*args) beginning_of_month.beginning_of_week(*args) end def end_of_calendar_month(*args) end_of_month.end_of_week(*args) end end end end ::Date.__send__(:include, ByStar::Kernel::Date)
Version data entries
3 entries across 3 versions & 2 rubygems
Version | Path |
---|---|
ta_by_star-4.1.0 | lib/by_star/kernel/date.rb |
ta_by_star-4.0.0 | lib/by_star/kernel/date.rb |
by_star-4.0.0 | lib/by_star/kernel/date.rb |