Sha256: e426234f11d1692fce5261b881ba2e91c8862957ced0a3bff9ba606f28f8dd23

Contents?: true

Size: 707 Bytes

Versions: 6

Compression:

Stored size: 707 Bytes

Contents

require 'mongoid_occurrences/queries/query'

module MongoidOccurrences
  module Queries
    class OccursOn < Query
      def initialize(base_criteria, date_time, options = {})
        @base_criteria = base_criteria
        @date_time = date_time
        @options = options
      end

      def criteria
        OccursBetween.criteria(base_criteria, adjusted_dtstart.utc, adjusted_dtend.utc, options)
      end

      private

      def adjusted_dtstart
        date_time.instance_of?(Date) ? date_time.beginning_of_day : date_time
      end

      def adjusted_dtend
        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_on.rb
mongoid_occurrences-1.1.6 lib/mongoid_occurrences/queries/occurs_on.rb
mongoid_occurrences-1.1.5 lib/mongoid_occurrences/queries/occurs_on.rb
mongoid_occurrences-1.1.4 lib/mongoid_occurrences/queries/occurs_on.rb
mongoid_occurrences-1.1.2 lib/mongoid_occurrences/queries/occurs_on.rb
mongoid_occurrences-1.1.1 lib/mongoid_occurrences/queries/occurs_on.rb