module Rodauth::Rails::Feature::Base
Public Class Methods
included(feature)
click to toggle source
# File lib/rodauth/rails/feature/base.rb, line 5 def self.included(feature) feature.auth_methods :rails_controller feature.auth_cached_method :rails_controller_instance end
Public Instance Methods
clear_session()
click to toggle source
Reset Rails
session to protect from session fixation attacks.
# File lib/rodauth/rails/feature/base.rb, line 11 def clear_session rails_controller_instance.reset_session end
flash_error_key()
click to toggle source
Default the flash error key to Rails' default :alert.
# File lib/rodauth/rails/feature/base.rb, line 16 def flash_error_key :alert end
rails_controller()
click to toggle source
# File lib/rodauth/rails/feature/base.rb, line 25 def rails_controller if only_json? && Rodauth::Rails.api_only? ActionController::API else ActionController::Base end end
rails_controller_eval(&block)
click to toggle source
Evaluates the block in context of a Rodauth
controller instance.
# File lib/rodauth/rails/feature/base.rb, line 21 def rails_controller_eval(&block) rails_controller_instance.instance_exec(&block) end
Private Instance Methods
_rails_controller_instance()
click to toggle source
Instances of the configured controller with current request's env hash.
# File lib/rodauth/rails/feature/base.rb, line 38 def _rails_controller_instance controller = rails_controller.new prepare_rails_controller(controller, rails_request) controller end
prepare_rails_controller(controller, rails_request)
click to toggle source
# File lib/rodauth/rails/feature/base.rb, line 45 def prepare_rails_controller(controller, rails_request) controller.set_request! rails_request controller.set_response! rails_controller.make_response!(rails_request) end
rails_api_controller?()
click to toggle source
# File lib/rodauth/rails/feature/base.rb, line 56 def rails_api_controller? defined?(ActionController::API) && rails_controller <= ActionController::API end