Sha256: 01797fc08ca2c5908119cf753d49e0fd062631604c011e2b7fa0e7434f733486

Contents?: true

Size: 611 Bytes

Versions: 4

Compression:

Stored size: 611 Bytes

Contents

# frozen_string_literal: true

module Hyrax
  ##
  # Indexes properties common to Hyrax::Resource types
  module LocationIndexer
    def to_solr
      super.tap do |index_document|
        index_document[:based_near_label_tesim] = index_document[:based_near_label_sim] = based_near_label_lookup(resource.based_near) if resource.respond_to? :based_near
      end
    end

    private

    def based_near_label_lookup(locations)
      locations.map do |loc|
        location_service.full_label(loc) if loc.present?
      end
    end

    def location_service
      Hyrax.config.location_service
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
hyrax-5.1.0.pre.beta1 app/indexers/concerns/hyrax/location_indexer.rb
hyrax-5.0.4 app/indexers/concerns/hyrax/location_indexer.rb
hyrax-5.0.3 app/indexers/concerns/hyrax/location_indexer.rb
hyrax-5.0.2 app/indexers/concerns/hyrax/location_indexer.rb