UNPKG

hunt

Version:

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

38 lines (32 loc) 1.29 kB
'use strict'; var storeReferer = require('./storeRefererHelper.js'), FacebookStrategy = require('passport-facebook').Strategy; exports.strategy = function (core) { return new FacebookStrategy({ clientID: core.config.passport.FACEBOOK_CLIENT_ID, clientSecret: core.config.passport.FACEBOOK_CLIENT_SECRET, callbackURL: core.config.hostUrl + 'auth/facebook/callback', passReqToCallback: true }, function (request, accessToken, refreshToken, profile, done) { // console.log('==============AUTH VIA FACEBOOK'); // console.log(profile); // console.log('=============='); if (profile.provider === 'facebook' && profile.id) { request.session.facebookAccessToken = accessToken; request.session.facebookRefreshToken = refreshToken; 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('/facebook', storeReferer, core.passport.authenticate('facebook')); router.get('/facebook/callback', core.passport.authenticate('facebook', { failureRedirect: '/auth/failure?strategy=facebook', successRedirect: '/auth/success?strategy=facebook' }) ); };