class BlacklightRangeLimit::InstallGenerator

Public Instance Methods

add_range_limit_concern_to_catalog() click to toggle source
# File lib/generators/blacklight_range_limit/install_generator.rb, line 34
def add_range_limit_concern_to_catalog
  sentinel = /concerns :searchable.*$/

  inject_into_file 'config/routes.rb', after: sentinel do
    "\n    concerns :range_searchable\n"
  end
end
copy_public_assets() click to toggle source
# File lib/generators/blacklight_range_limit/install_generator.rb, line 9
def copy_public_assets
  generate 'blacklight_range_limit:assets'
end
install_catalog_controller_mixin() click to toggle source
# File lib/generators/blacklight_range_limit/install_generator.rb, line 13
def install_catalog_controller_mixin
  inject_into_file 'app/controllers/catalog_controller.rb', after: /include Blacklight::Catalog.*$/ do
    "\n  include BlacklightRangeLimit::ControllerOverride\n"
  end
end
install_routing_concern() click to toggle source
# File lib/generators/blacklight_range_limit/install_generator.rb, line 30
def install_routing_concern
  route('concern :range_searchable, BlacklightRangeLimit::Routes::RangeSearchable.new')
end
install_search_builder() click to toggle source
# File lib/generators/blacklight_range_limit/install_generator.rb, line 19
def install_search_builder
  path = options[:'builder-path']
  if File.exist? path
    inject_into_file path, after: /include Blacklight::Solr::SearchBuilderBehavior.*$/ do
      "\n  include BlacklightRangeLimit::RangeLimitBuilder\n"
    end
  else
    say_status("error", "Unable to find #{path}. You must manually add the 'include BlacklightRangeLimit::RangeLimitBuilder' to your SearchBuilder", :red)
  end
end