module DeviseSafeguard::Controllers::Helpers
Public Instance Methods
is_safeguard_token_needed?()
click to toggle source
# File lib/devise-safeguard/controllers/helpers.rb, line 25 def is_safeguard_token_needed? if require_token? # login with 2fa id = warden.session(resource_name)[:id] remember_me = (params.fetch(resource_name, {})[:remember_me].to_s == "1") return_to = session["#{resource_name}_return_to"] warden.logout warden.reset_session! # make sure the session resetted session["#{resource_name}_id"] = id # this is safe to put in the session because the cookie is signed session["#{resource_name}_password_checked"] = true session["#{resource_name}_remember_me"] = remember_me session["#{resource_name}_return_to"] = return_to if return_to redirect_to verify_safeguard_path_for(resource_name) return end end
is_signing_in?()
click to toggle source
# File lib/devise-safeguard/controllers/helpers.rb, line 9 def is_signing_in? if devise_controller? && signed_in?(resource_name) && self.class == Devise::SessionsController || self.class.ancestors.include?(Devise::SessionsController) && self.action_name == "create" return true end return false end
require_token?()
click to toggle source
# File lib/devise-safeguard/controllers/helpers.rb, line 19 def require_token? return false if !signed_in?(resource_name) return false if !warden.session(resource_name)[:with_safeguard_authentication] return true end
verify_safeguard_path_for(resource_or_scope = nil)
click to toggle source
# File lib/devise-safeguard/controllers/helpers.rb, line 46 def verify_safeguard_path_for(resource_or_scope = nil) scope = Devise::Mapping.find_scope!(resource_or_scope) send("#{scope}_verify_safeguard_path") end