passport.use( new TwitterStrategy( { consumerKey: authConfig.twitter.consumer_key, consumerSecret: authConfig.twitter.consumer_secret, callbackURL: `${schnack_host}/auth/twitter/callback` }, (token, tokenSecret, profile, done) => { done(null, profile); } ) );
database.UserModel.load(options, function (err, user) { if (err) return done(err); if (!user) { var user = new database.UserModel({ name: profile.displayName, provider: 'twitter', twitter: profile._json }); user.save(function (err) { if (err) console.log(err); return done(err, user); }); } else { return done(err, user); } });
/** * Sign in with Twitter. */ passport.use(new TwitterStrategy(secrets.twitter, function(req, accessToken, tokenSecret, profile, done) { if (req.user) { UserRepo.linkTwitterProfile(req.user.id, accessToken, tokenSecret, profile) .then(function(user) { req.flash('info', { msg: 'Twitter account has been linked.' }); done(null, user); }) .catch(function(err) { req.flash('errors', { msg: err }); done(null, false, { message: err }); }); } else { UserRepo.createAccFromTwitter(accessToken, tokenSecret, profile) .then(function(user) { done(null, user); }) .catch(function(error) { done(error); }); } }));
passport.use(new TwitterStrategy({ consumerKey: process.env.TWITTER_CONSUMER_KEY, consumerSecret: process.env.TWITTER_CONSUMER_SECRET, callbackURL: "/auth/twitter/callback", includeEmail: true }, (accessToken, refreshToken, profile, done) => { AuthService.resolveUser({ twitter_id: profile.id, name: profile.displayName.split(' ')[0], last_name: profile.displayName.split(' ').slice(1).join(' '), email: `${profile.id}@twitter.com` // Until there is no way to retrieve email from twitter API }, (err, user, info) => { if (err) { return done(err); } if (user) { user.info = _getThirdPartyInfo(profile); } done(null, user, info); }); }));
passport.use(new TwitterStrategy({ consumerKey: configAuth.twitterAuth.consumerKey, consumerSecret: configAuth.twitterAuth.consumerSecret, callbackURL: configAuth.twitterAuth.callbackURL, }, function(token, tokenSecret, profile, done) { process.nextTick(function() { User.findOne({ 'twitter.id': profile.id }, function(err, user) { if (err) return done(err); if (user) { return done(null, user); } else { var newUser = new User(); newUser.twitter.id = profile.id; newUser.twitter.token = token; newUser.twitter.username = profile.username; newUser.twitter.displayName = profile.displayName; newUser.save(function(err) { if (err) throw err; return done(null, newUser); }); } }); }); }));
User.findOne({ 'twitter.id' : profile.id }, function(err, user) { if (err) return done(err); if (err) throw err; return done(null, user); }); return done(null, user); } else { var newUser = new User(); if (err) throw err; return done(null, newUser); }); if (err) throw err; return done(null, user); });
database.UserModel.load(options, function (err, user) { if (err) return done(err); if (!user) { var user = new database.UserModel({ name: profile.displayName, provider: 'twitter', twitter: profile._json }); user.save(function (err) { if (err) console.log(err); return done(err, user); }); } else { return done(err, user); } });