UNPKG

hunt

Version:

High level nodejs framework build on top of expressjs, mongoose, sequilize, socketio and passportjs

35 lines (30 loc) 1.24 kB
'use strict'; var storeReferer = require('./storeRefererHelper.js'), TwitterStrategy = require('passport-twitter').Strategy; exports.strategy = function (core) { return new TwitterStrategy({ consumerKey: core.config.passport.TWITTER_CONSUMER_KEY, consumerSecret: core.config.passport.TWITTER_CONSUMER_SECRET, callbackURL: core.config.hostUrl + 'auth/twitter/callback', passReqToCallback: true }, function (request, token, tokenSecret, profile, done) { // console.log('==============AUTH VIA TWITTER'); // console.log(profile); // console.log('=============='); if (profile.provider === 'twitter' && profile.id) { request.session.twitterToken = token; request.session.twitterSecret = tokenSecret; core.model.User.processOAuthProfile(request, profile, done); } else { return done(new Error('There is something strange instead of user profile!')); } }); }; exports.routes = function (core, router) { router.get('/twitter', storeReferer, core.passport.authenticate('twitter')); router.get('/twitter/callback', core.passport.authenticate('twitter', { failureRedirect: '/auth/failure?strategy=twitter', successRedirect: '/auth/success?strategy=twitter' })); };