// 'use strict'; // /** // * Module dependencies. // */ // var passport = require('passport'), // GithubStrategy = require('passport-github').Strategy, // config = require('../config'), // users = require('../../app/controllers/users.server.controller'); // module.exports = function() { // // Use github strategy // passport.use(new GithubStrategy({ // clientID: config.github.clientID, // clientSecret: config.github.clientSecret, // callbackURL: config.github.callbackURL, // passReqToCallback: true // }, // function(req, accessToken, refreshToken, profile, done) { // // Set the provider data and include tokens // var providerData = profile._json; // providerData.accessToken = accessToken; // providerData.refreshToken = refreshToken; // // Create the user OAuth profile // var displayName = profile.displayName.trim(); // var iSpace = displayName.indexOf(' '); // index of the whitespace following the firstName // var firstName = iSpace !== -1 ? displayName.substring(0, iSpace) : displayName; // var lastName = iSpace !== -1 ? displayName.substring(iSpace + 1) : ''; // var providerUserProfile = { // firstName: firstName, // lastName: lastName, // displayName: displayName, // email: profile.emails[0].value, // username: profile.username, // provider: 'github', // providerIdentifierField: 'id', // providerData: providerData // }; // // Save the user OAuth profile // users.saveOAuthUserProfile(req, providerUserProfile, done); // } // )); // };