Sha256: 7d7dc5ac9ba2be25a0ea834bc801bab643082e0e8b84463ba7c13957d506c6a0
Contents?: true
Size: 1.18 KB
Versions: 11
Compression:
Stored size: 1.18 KB
Contents
class User module Omniauthable extend ActiveSupport::Concern module ClassMethods def from_omniauth(auth) user = User.where(provider: auth.provider, uid: auth.uid).first unless user user = User.new user.provider = auth.provider user.uid = auth.uid user.first_name = auth.info.first_name user.last_name = auth.info.last_name user.email = auth.info.email user.lastfm_user_name = auth.info.nickname if user.provider == 'lastfm' user.save end user end def new_with_session(params, session) if session["devise.user_attributes"] new(session["devise.user_attributes"], without_protection: true) do |user| user.attributes = params user.valid? end else super end end end end def password_required? super && provider.blank? end def email_required? super && provider.blank? end def update_with_password(params, *options) if encrypted_password.blank? update_attributes(params, *options) else super end end end
Version data entries
11 entries across 11 versions & 1 rubygems