Sha256: b213cbe51032c1ca77577c2b8226923690a662c984855c22507695068617e48c
Contents?: true
Size: 1.39 KB
Versions: 9
Compression:
Stored size: 1.39 KB
Contents
# -*- encoding : utf-8 -*- module Blacklight::Base extend ActiveSupport::Concern include Blacklight::Configurable include Blacklight::SolrHelper included do # When RSolr::RequestError is raised, the rsolr_request_error method is executed. # The index action will more than likely throw this one. # Example, when the standard query parser is used, and a user submits a "bad" query. rescue_from RSolr::Error::Http, :with => :rsolr_request_error if respond_to? :rescue_from end protected # when solr (RSolr) throws an error (RSolr::RequestError), this method is executed. def rsolr_request_error(exception) if Rails.env.development? raise exception # Rails own code will catch and give usual Rails error page with stack trace else flash_notice = I18n.t('blacklight.search.errors.request_error') # If there are errors coming from the index page, we want to trap those sensibly if flash[:notice] == flash_notice logger.error "Cowardly aborting rsolr_request_error exception handling, because we redirected to a page that raises another exception" raise exception end logger.error exception flash[:notice] = flash_notice redirect_to root_path end end def blacklight_solr @solr ||= RSolr.connect(blacklight_solr_config) end def blacklight_solr_config Blacklight.solr_config end end
Version data entries
9 entries across 9 versions & 1 rubygems