module Devise::Doorkeeper

Constants

VERSION

Public Class Methods

configure_devise(config) click to toggle source

configure devise to support doorkeeper error responses

# File lib/devise/doorkeeper.rb, line 8
def self.configure_devise(config)
  Devise::FailureApp.prepend(Devise::Doorkeeper::DoorkeeperFailureApp)
end
configure_doorkeeper(base) click to toggle source

configure doorkeeper to use devise authentication

# File lib/devise/doorkeeper.rb, line 13
def self.configure_doorkeeper(base)
  base.instance_eval do
    resource_owner_authenticator do
      current_user || warden.authenticate!(scope: :user)
    end

    # configure doorkeeper to use devise database authenticatable plugin
    resource_owner_from_credentials do
      user = User.find_for_database_authentication(email: params[:username])
      if user && user.valid_for_authentication? { user.valid_password?(params[:password]) }
        user
      else
        nil
      end
    end
  end
end