class Identity

Public Class Methods

find_for_oauth(auth) click to toggle source
# File lib/generators/happy_seed/omniauth/templates/app/models/identity.rb, line 6
def self.find_for_oauth(auth)
  identity = find_by(provider: auth.provider, uid: auth.uid)
  identity = create(uid: auth.uid, provider: auth.provider) if identity.nil?
  if auth.credentials
    identity.accesstoken = auth.credentials.token
  end
  if auth.info
    identity.name = auth.info.name
    identity.email = auth.info.email
    identity.nickname = auth.info.nickname
    identity.image = auth.info.image
    identity.phone = auth.info.phone
    identity.urls = (auth.info.urls || "").to_json
  end
  identity.save
  identity
end