Files
meanTorrent/modules/users/server/config/users.server.config.js

41 lines
1.0 KiB
JavaScript

'use strict';
/**
* Module dependencies
*/
var passport = require('passport'),
User = require('mongoose').model('User'),
path = require('path'),
config = require(path.resolve('./config/config'));
/**
* Module init function
*/
module.exports = function (app) {
// Serialize sessions
passport.serializeUser(function (user, done) {
user.updateSignedTime();
done(null, user.id);
});
// Deserialize sessions
passport.deserializeUser(function (id, done) {
User.findOne({
_id: id
}, '-salt -password -history -remarks')
.populate('invited_by', 'username displayName profileImageURL isVip score uploaded downloaded')
.populate('makers', 'name').exec(function (err, user) {
done(err, user);
});
});
// Initialize strategies
config.utils.getGlobbedPaths(path.join(__dirname, './strategies/**/*.js')).forEach(function (strategy) {
require(path.resolve(strategy))(config);
});
// Add passport's middleware
app.use(passport.initialize());
app.use(passport.session());
};