class GoogleTether
Public Class Methods
store(user_params)
click to toggle source
# File lib/magis/auths/google.rb, line 2 def self.store(user_params) user_raw = user_params["extra"]["raw_info"] user = Magis.db["users"].find(email: user_raw["email"], provider: user_params["provider"]).first user_info = Hash.new if user_raw["email"] user_info[:email] = user_raw["email"] end if user_raw["first_name"] user_info[:firstName] = user_raw["first_name"] end if user_raw["last_name"] user_info[:lastName] = user_raw["last_name"] end if user_raw["gender"] user_info[:gender] = user_raw["gender"] end if user_params["info"]["image"] user_info[:image] = user_params["info"]["image"] end if user_raw["id"] user_info[:uid] = user_raw["id"] end if user_raw["locale"] user_info[:locale] = user_raw["locale"] end if user_raw["timezone"] user_info[:timezone] = user_raw["timezone"] end if user_params["credentials"]["token"] user_info[:accessToken] = user_params["credentials"]["token"] end user_info[:provider] = user_params["provider"] if user Magis.db["users"].update({"_id" => user["_id"]}, {"$set" => user_info}) else Magis.db["users"].insert(user_info) user = Magis.db["users"].find(email: user_raw["email"]).first end user end