barisusakli 10 years ago
parent 37b1d3c8be
commit 5f76695d5a

@ -199,37 +199,42 @@ authenticationController.doLogin = function(req, uid, callback) {
return callback(err); return callback(err);
} }
var uuid = utils.generateUUID(); authenticationController.onSuccessfulLogin(req, uid, callback);
req.session.meta = {}; });
};
// Associate IP used during login with user account authenticationController.onSuccessfulLogin = function(req, uid, callback) {
user.logIP(uid, req.ip); callback = callback || function() {};
req.session.meta.ip = req.ip; var uuid = utils.generateUUID();
req.session.meta = {};
// Associate metadata retrieved via user-agent // Associate IP used during login with user account
req.session.meta = _.extend(req.session.meta, { user.logIP(uid, req.ip);
uuid: uuid, req.session.meta.ip = req.ip;
datetime: Date.now(),
platform: req.useragent.platform,
browser: req.useragent.browser,
version: req.useragent.version
});
// Associate login session with user // Associate metadata retrieved via user-agent
async.parallel([ req.session.meta = _.extend(req.session.meta, {
function (next) { uuid: uuid,
user.auth.addSession(uid, req.sessionID, next); datetime: Date.now(),
}, platform: req.useragent.platform,
function (next) { browser: req.useragent.browser,
db.setObjectField('uid:' + uid + 'sessionUUID:sessionId', uuid, req.sessionID, next); version: req.useragent.version
} });
], function(err) {
if (err) { // Associate login session with user
return callback(err); async.parallel([
} function (next) {
plugins.fireHook('action:user.loggedIn', uid); user.auth.addSession(uid, req.sessionID, next);
callback(); },
}); function (next) {
db.setObjectField('uid:' + uid + 'sessionUUID:sessionId', uuid, req.sessionID, next);
}
], function(err) {
if (err) {
return callback(err);
}
plugins.fireHook('action:user.loggedIn', uid);
callback();
}); });
}; };

Loading…
Cancel
Save