class Models::Users::User
Public Class Methods
authenticate(user_id, application_id, omniauth)
click to toggle source
# File lib/restpack_user_service/models/user.rb, line 16 def self.authenticate(user_id, application_id, omniauth) authentication = Authentication.get_by_omniauth(application_id, omniauth) if authentication return authentication.user else if user_id.blank? user = User.new(application_id: application_id) else user = User.find(user_id) end [:name, :nickname, :email, :image, :location, :description].each do |attribute| user[attribute] ||= omniauth['info'][attribute.to_s] end user.save! user.authentications << Authentication.from_omniauth(application_id, omniauth) user end end