Sha256: e184bd43535cb234315cac9231ae35792bd3d630b5f1d8b000714207c10f68b8

Contents?: true

Size: 738 Bytes

Versions: 1

Compression:

Stored size: 738 Bytes

Contents

class Identity < ActiveRecord::Base
  belongs_to :user, required: false
  validates_presence_of :uid, :provider
  validates_uniqueness_of :uid, scope: :provider

  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
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
happy_seed-0.0.21 lib/generators/happy_seed/omniauth/templates/app/models/identity.rb