Class: CoordinateValidator

Inherits:
ActiveModel::EachValidator
  • Object
show all
Defined in:
lib/coordinate_validator.rb

Instance Method Summary collapse

Instance Method Details

#validate_each(record, attribute, value) ⇒ Object



2
3
4
5
6
7
8
9
# File 'lib/coordinate_validator.rb', line 2

def validate_each(record, attribute, value)
  return if value.respond_to?(:latitude) &&
            (-90..90).cover?(value.latitude) &&
            value.respond_to?(:longitude) &&
            (-180..180).cover?(value.longitude)

  record.errors.add(attribute, options[:message] || :invalid)
end