Sha256: 17c1f9b8616cfe1ae89716ee45a17a3c742b7513021fa29f17a5ecb5682cfb48

Contents?: true

Size: 717 Bytes

Versions: 66

Compression:

Stored size: 717 Bytes

Contents

# encoding: UTF-8
module MongoMapper
  module Extensions
    module Time
      def to_mongo(value)
        if value.nil? || value == ''
          nil
        else
          time_class = ::Time.try(:zone).present? ? ::Time.zone : ::Time
          time = value.is_a?(::Time) ? value : time_class.parse(value.to_s)
          # strip milliseconds as Ruby does micro and bson does milli and rounding rounded wrong
          at(time.to_i).utc if time
        end
      end

      def from_mongo(value)
        if ::Time.try(:zone).present? && value.present?
          value.in_time_zone(::Time.zone)
        else
          value
        end
      end
    end
  end
end

class Time
  extend MongoMapper::Extensions::Time
end

Version data entries

66 entries across 66 versions & 7 rubygems

Version Path
mongo_mapper-0.11.0 lib/mongo_mapper/extensions/time.rb
mongo_mapper-0.10.1 lib/mongo_mapper/extensions/time.rb
mongo_mapper-0.10.0 lib/mongo_mapper/extensions/time.rb
mongo_mapper-0.9.2 lib/mongo_mapper/extensions/time.rb
jonbell-mongo_mapper-0.8.6 lib/mongo_mapper/extensions/time.rb
mongo_mapper-0.9.1 lib/mongo_mapper/extensions/time.rb
mongo_mapper-0.9.0 lib/mongo_mapper/extensions/time.rb
ign-mongo_mapper-0.8.6.2 lib/mongo_mapper/extensions/time.rb
ign-mongo_mapper-0.8.6.1 lib/mongo_mapper/extensions/time.rb
ssherman-mongo_mapper-0.8.6 lib/mongo_mapper/extensions/time.rb
mongo_mapper-0.8.6 lib/mongo_mapper/extensions/time.rb
mongo_mapper-0.8.5 lib/mongo_mapper/extensions/time.rb
honkster-mongo_mapper-0.8.4 lib/mongo_mapper/extensions/time.rb
mongo_mapper-0.8.4 lib/mongo_mapper/extensions/time.rb
mongo_mapper-unstable-2010.08.19 lib/mongo_mapper/extensions/time.rb
mongo_mapper-unstable-2010.08.18 lib/mongo_mapper/extensions/time.rb
mongo_mapper-unstable-2010.08.17 lib/mongo_mapper/extensions/time.rb
mongo_mapper-unstable-2010.08.16 lib/mongo_mapper/extensions/time.rb
mongo_mapper-unstable-2010.08.15 lib/mongo_mapper/extensions/time.rb
mongo_mapper-unstable-2010.08.14 lib/mongo_mapper/extensions/time.rb