class Lolita::Extensions::Authentication::DeviseAdapter
Public Class Methods
new(context, options={})
click to toggle source
# File lib/lolita/extensions/authentication/devise_adapter.rb, line 6 def initialize context, options={} raise Lolita::NoAuthenticationDefinedError, "Lolita.authentication is not defined" unless Lolita.authentication @context = context end
Public Instance Methods
authenticate_user!(*args)
click to toggle source
# File lib/lolita/extensions/authentication/devise_adapter.rb, line 24 def authenticate_user! *args @context.send(Lolita.authentication) end
current_user()
click to toggle source
# File lib/lolita/extensions/authentication/devise_adapter.rb, line 11 def current_user unless @current_user find_class_and_user do |klass,user| @current_user = user end end @current_user end
edit_path()
click to toggle source
# File lib/lolita/extensions/authentication/devise_adapter.rb, line 32 def edit_path find_class_and_user do |klass,user| return @context.send(:"edit_#{klass.to_s.downcase}_password_path") end end
sign_out_path()
click to toggle source
# File lib/lolita/extensions/authentication/devise_adapter.rb, line 38 def sign_out_path find_class_and_user do |klass,user| return @context.send(:"destroy_#{klass.to_s.downcase}_session_path") end end
sign_out_via()
click to toggle source
# File lib/lolita/extensions/authentication/devise_adapter.rb, line 28 def sign_out_via ::Devise.sign_out_via end
user_signed_in?()
click to toggle source
# File lib/lolita/extensions/authentication/devise_adapter.rb, line 20 def user_signed_in? !!current_user end
Private Instance Methods
find_class_and_user() { |klass, user| ... }
click to toggle source
# File lib/lolita/extensions/authentication/devise_adapter.rb, line 46 def find_class_and_user Lolita.user_classes.each do |klass| if @context.respond_to?(:"current_#{klass.to_s.downcase}") && user = @context.send(:"current_#{klass.to_s.downcase}") yield klass, user break end end end