Sha256: a193f962c2fa4f0038935379f15bc98f3ccf46798217f8d948358aa219a58b2c

Contents?: true

Size: 601 Bytes

Versions: 6

Compression:

Stored size: 601 Bytes

Contents

require 'mongoid_occurrences/queries/query'

module MongoidOccurrences
  module Queries
    class OccursUntil < Query
      option :dtend_field, :dtend

      def initialize(base_criteria, date_time, options = {})
        @base_criteria = base_criteria
        @date_time = date_time
        @options = options
      end

      def criteria
        base_criteria.lte(dtend_field => adjusted_date_time.utc)
      end

      private

      def adjusted_date_time
        date_time.instance_of?(Date) ? date_time.end_of_day : date_time
      end

      attr_reader :date_time, :options
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
mongoid_occurrences-1.2.0 lib/mongoid_occurrences/queries/occurs_until.rb
mongoid_occurrences-1.1.6 lib/mongoid_occurrences/queries/occurs_until.rb
mongoid_occurrences-1.1.5 lib/mongoid_occurrences/queries/occurs_until.rb
mongoid_occurrences-1.1.4 lib/mongoid_occurrences/queries/occurs_until.rb
mongoid_occurrences-1.1.2 lib/mongoid_occurrences/queries/occurs_until.rb
mongoid_occurrences-1.1.1 lib/mongoid_occurrences/queries/occurs_until.rb