Sha256: 0f5e51d12cf594bb1a16ad460da681ffdb49ad9720e033427735eddd7b733337
Contents?: true
Size: 1.65 KB
Versions: 2
Compression:
Stored size: 1.65 KB
Contents
# Include this module into any of your Controller classes to add Hydra functionality # # The primary function of this module is to mix in a number of other Hydra Modules, including # Hydra::AccessControlsEnforcement # # @example # class CustomHydraController < ApplicationController # include Hydra::Controller::ControllerBehavior # end # module Hydra::Controller::ControllerBehavior extend ActiveSupport::Concern included do # Catch permission errors rescue_from CanCan::AccessDenied, with: :deny_access end # Override blacklight to produce a search_builder that has the current collection in context def search_builder processor_chain = search_params_logic super.tap { |builder| builder.current_ability = current_ability } end # get the currently configured user identifier. Can be overridden to return whatever (ie. login, email, etc) # defaults to using whatever you have set as the Devise authentication_key def user_key current_user.user_key if current_user end # Override this method if you wish to customize the way access is denied def deny_access(exception) if exception.action == :edit redirect_to({ action: 'show' }, alert: exception.message) elsif current_user and current_user.persisted? redirect_to root_path, alert: exception.message else session['user_return_to'.freeze] = request.url redirect_to new_user_session_path, alert: exception.message end end module ClassMethods # get the solr name for a field with this name and using the given solrizer descriptor def solr_name(name, *opts) ActiveFedora::SolrQueryBuilder.solr_name(name, *opts) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
hydra-core-9.1.1 | app/controllers/concerns/hydra/controller/controller_behavior.rb |
hydra-core-9.1.0 | app/controllers/concerns/hydra/controller/controller_behavior.rb |