Sha256: 754706f01fdd8a360dd7a0f90c5f858494f61bc95df245d7848210bcb2f0a299

Contents?: true

Size: 992 Bytes

Versions: 13

Compression:

Stored size: 992 Bytes

Contents

module SirTrevorRails
  module Blocks
    ##
    # Multi-up browse block
    class BrowseBlock < SirTrevorRails::Block
      attr_reader :solr_helper

      def with_solr_helper(solr_helper)
        @solr_helper = solr_helper
      end

      def search_options(id)
        (items.detect { |x| x[:id] == id }) || {}
      end

      def searches
        @searches ||= parent.exhibit.searches.published.where(slug: item_ids).sort do |a, b|
          order.index(a.slug) <=> order.index(b.slug)
        end
      end

      def searches?
        !searches.empty?
      end

      def item_ids
        items.map { |v| v[:id] }
      end

      def items
        item_values.select { |x| x[:display] == 'true' }
      end

      def order
        items.sort_by { |x| x[:weight] }.map { |x| x[:id] }
      end

      def display_item_counts?
        send(:'display-item-counts') == 'true'
      end

      private

      def item_values
        item.try(:values) || []
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
blacklight-spotlight-0.25.0 app/models/sir_trevor_rails/blocks/browse_block.rb
blacklight-spotlight-0.24.0 app/models/sir_trevor_rails/blocks/browse_block.rb
blacklight-spotlight-0.23.0 app/models/sir_trevor_rails/blocks/browse_block.rb
blacklight-spotlight-0.22.0 app/models/sir_trevor_rails/blocks/browse_block.rb
blacklight-spotlight-0.21.0 app/models/sir_trevor_rails/blocks/browse_block.rb
blacklight-spotlight-0.20.3 app/models/sir_trevor_rails/blocks/browse_block.rb
blacklight-spotlight-0.20.2 app/models/sir_trevor_rails/blocks/browse_block.rb
blacklight-spotlight-0.20.1 app/models/sir_trevor_rails/blocks/browse_block.rb
blacklight-spotlight-0.20.0 app/models/sir_trevor_rails/blocks/browse_block.rb
blacklight-spotlight-0.19.2 app/models/sir_trevor_rails/blocks/browse_block.rb
blacklight-spotlight-0.19.1 app/models/sir_trevor_rails/blocks/browse_block.rb
blacklight-spotlight-0.19.0 app/models/sir_trevor_rails/blocks/browse_block.rb
blacklight-spotlight-0.18.0 app/models/sir_trevor_rails/blocks/browse_block.rb