diff --git a/server.js b/server.js index 36cf21e..adeffbd 100644 --- a/server.js +++ b/server.js @@ -195,7 +195,8 @@ function initializeOAuthStrategies(baseUrl = '') { clientID: process.env.FACEBOOK_CLIENT_ID, clientSecret: process.env.FACEBOOK_CLIENT_SECRET, callbackURL: `${baseUrl}/auth/facebook/callback`, - profileFields: ['id', 'displayName', 'emails'] + profileFields: ['id', 'name', 'email'], + enableProof: true }, (accessToken, refreshToken, profile, done) => { db.get('SELECT * FROM users WHERE facebook_id = ?', [profile.id], (err, user) => { if (err) return done(err); @@ -204,8 +205,9 @@ function initializeOAuthStrategies(baseUrl = '') { return done(null, user); } else { const email = profile.emails && profile.emails[0] ? profile.emails[0].value : null; + const displayName = profile.name ? `${profile.name.givenName} ${profile.name.familyName}` : profile.displayName; db.run('INSERT INTO users (facebook_id, display_name, email) VALUES (?, ?, ?)', - [profile.id, profile.displayName, email], + [profile.id, displayName, email], function(err) { if (err) return done(err); @@ -272,7 +274,7 @@ app.get('/auth/facebook', (req, res, next) => { const baseUrl = getBaseUrl(req); initializeOAuthStrategies(baseUrl); - passport.authenticate('facebook', { scope: ['email'] })(req, res, next); + passport.authenticate('facebook', { scope: ['public_profile', 'email'] })(req, res, next); }); app.get('/auth/facebook/callback',