class Paperclip::Location::Processor

Public Class Methods

register!(name = :location) click to toggle source
# File lib/paperclip/location/processor.rb, line 9
def self.register!(name = :location)
  Paperclip.configure do |c|
    c.register_processor name, self
  end
end

Public Instance Methods

make() click to toggle source
# File lib/paperclip/location/processor.rb, line 15
def make
  if can_process?
    instance.lat = gps.latitude
    instance.lng = gps.longitude
  end
  file
end

Private Instance Methods

can_process?() click to toggle source
# File lib/paperclip/location/processor.rb, line 29
def can_process?
  !location_locked? && gps.present? && instance.present? && exif.present?
end
exif() click to toggle source
# File lib/paperclip/location/processor.rb, line 33
def exif
  @exif ||= EXIFR::JPEG.new(file.path)
rescue EXIFR::MalformedJPEG => ex
  nil
end
location_locked?() click to toggle source
# File lib/paperclip/location/processor.rb, line 25
def location_locked?
  instance.respond_to?(:location_locked?) && instance.location_locked?
end