Sha256: 0de60526301998b96f6a1e3d8c4034cdcc88e281545c84d4721301c2591305b1

Contents?: true

Size: 699 Bytes

Versions: 12

Compression:

Stored size: 699 Bytes

Contents

# frozen_string_literal: true
require_relative '../calendar'

module TimeBoss
  module Calendars
    class Broadcast < Calendar
      def initialize
        super(basis: Basis)
      end

      private

      class Basis < Calendar::Support::MonthBasis
        def start_date
          @_start_date ||= begin
                             date = Date.civil(year, month, 1)
                             date - (date.wday + 6) % 7
                           end
        end

        def end_date
          @_end_date ||= begin
                           date = Date.civil(year, month, -1)
                           date - date.wday
                         end
        end
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
timeboss-0.2.5 lib/timeboss/calendars/broadcast.rb
timeboss-0.2.4 lib/timeboss/calendars/broadcast.rb
timeboss-0.2.3 lib/timeboss/calendars/broadcast.rb
timeboss-0.2.2 lib/timeboss/calendars/broadcast.rb
timeboss-0.1.1 lib/timeboss/calendars/broadcast.rb
timeboss-0.1.0 lib/timeboss/calendars/broadcast.rb
timeboss-0.0.10 lib/timeboss/calendars/broadcast.rb
timeboss-0.0.9 lib/timeboss/calendars/broadcast.rb
timeboss-0.0.8 lib/timeboss/calendars/broadcast.rb
timeboss-0.0.7 lib/timeboss/calendars/broadcast.rb
timeboss-0.0.6 lib/timeboss/calendars/broadcast.rb
timeboss-0.0.5 lib/timeboss/calendars/broadcast.rb