class Geocoder::Railtie
def self._geocoder_init(options)
def self._geocoder_init(options) unless _geocoder_initialized? class_inheritable_reader :geocoder_options class_inheritable_hash_writer :geocoder_options end self.geocoder_options = options unless _geocoder_initialized? include Geocoder::ActiveRecord end end
def self._geocoder_initialized?
def self._geocoder_initialized? included_modules.include? Geocoder::ActiveRecord end
def self.geocoded_by(address_attr, options = {})
Set attribute names and include the Geocoder module.
#
def self.geocoded_by(address_attr, options = {}) _geocoder_init( :user_address => address_attr, :latitude => options[:latitude] || :latitude, :longitude => options[:longitude] || :longitude ) end
def self.insert
def self.insert return unless defined?(::ActiveRecord) ## # Add methods to ActiveRecord::Base so Geocoder is accessible by models. # ::ActiveRecord::Base.class_eval do ## # Set attribute names and include the Geocoder module. # def self.geocoded_by(address_attr, options = {}) _geocoder_init( :user_address => address_attr, :latitude => options[:latitude] || :latitude, :longitude => options[:longitude] || :longitude ) end ## # Set attribute names and include the Geocoder module. # def self.reverse_geocoded_by(latitude_attr, longitude_attr, options = {}) _geocoder_init( :fetched_address => options[:address] || :address, :latitude => latitude_attr, :longitude => longitude_attr ) end def self._geocoder_init(options) unless _geocoder_initialized? class_inheritable_reader :geocoder_options class_inheritable_hash_writer :geocoder_options end self.geocoder_options = options unless _geocoder_initialized? include Geocoder::ActiveRecord end end def self._geocoder_initialized? included_modules.include? Geocoder::ActiveRecord end end end
def self.reverse_geocoded_by(latitude_attr, longitude_attr, options = {})
Set attribute names and include the Geocoder module.
#
def self.reverse_geocoded_by(latitude_attr, longitude_attr, options = {}) _geocoder_init( :fetched_address => options[:address] || :address, :latitude => latitude_attr, :longitude => longitude_attr ) end