Skip to content

Instantly share code, notes, and snippets.

@yongjhih
Last active August 8, 2016 04:10
Show Gist options
  • Select an option

  • Save yongjhih/07241e888af619acedf258d24d079bab to your computer and use it in GitHub Desktop.

Select an option

Save yongjhih/07241e888af619acedf258d24d079bab to your computer and use it in GitHub Desktop.
return RxFb.api(FB_APP_ID, FB_CLIENT_ID, "/me?fields=email", { access_token: fbToken; }).flatMap(fbUser -> {
var userQuery = new Parse.Query(Parse.User);
userQuery.equalTo("email", fbUser.email);
return Observable.unzip(fbToken, ParseObservable.find(userQuery)); // magic
}).switchIfEmpty(fbToken -> {
var newUser = new Parse.User();
newUser.setUsername(fbUser.email);
newUser.setEmail(fbUser.email)
newUser.setPassword(fbToken);
return ParseObservable.signUp(newUser);
})
.flatMap(parseUser -> ParseObservable.fetch(parseUser))
.map(parseUser -> parseUser.getSessionToken());
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment