Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def self.find_for_google_oauth2(access_token, signed_in_resourse=nil)
- data = access_token.info
- user = User.where(:provider => access_token.provider, :uid => access_token.uid).first
- if user
- return user
- else
- registered_user = User.where(:email => access_token.email).first
- if registered_user
- return registered_user
- else
- user = User.create(
- name: data["name"],
- city: data["city"],
- iin: data["iin"],
- provider: access_token.provider,
- email: data["email"],
- uid: access_token.uid,
- image: data["image"],
- password: Devise.friendly_token[0,20]
- )
- end
- end
- end
- def self.find_for_facebook_oauth(access_token, signed_in_resourse=nil)
- data = access_token.info
- user = User.where(:provider => access_token.provider, :uid => access_token.uid).first
- if user
- return user
- else
- registered_user = User.where(:email => data.email).first
- if registered_user
- return registered_user
- else
- user = User.create(
- name: access_token.extra.raw_info.name,
- city: access_token.extra.raw_info.city,
- iin: access_token.extra.raw_info.iin,
- provider: access_token.provider,
- email: data.email,
- uid: access_token.uid,
- image: data.image,
- password: Devise.friendly_token[0,20]
- )
- end
- end
- end
- end
Add Comment
Please, Sign In to add comment