module Identity::Mixins::User
Public Class Methods
included(base)
click to toggle source
# File lib/identity/mixins/user.rb, line 4 def self.included(base) base.devise *Identity.devise_modules base.extend ClassMethods if Devise.omniauth_providers.any? base.devise :omniauthable, omniauth_providers: Devise.omniauth_providers end end
Public Instance Methods
build_from_auth(auth)
click to toggle source
# File lib/identity/mixins/user.rb, line 13 def build_from_auth(auth) auth_provider = auth.provider.gsub(/\_/, '-') self.email = "#{auth.uid}@#{auth_provider}.com" self.password = Devise.friendly_token[0,20] self.oauth_hash = auth send("build_from_#{auth.provider}", auth) if respond_to?("build_from_#{auth.provider}") end