require socket.io only when you need it, shaves off another 0.5s on load

v1.18.x
psychobunny 10 years ago
parent 61b8fd2402
commit 13fa1f6b9a

@ -22,8 +22,7 @@ var fs = require('fs'),
languages = require('../languages'),
image = require('../image'),
file = require('../file'),
helpers = require('./helpers'),
websockets = require('../socket.io');
helpers = require('./helpers');
function getUserDataByUserSlug(userslug, callerUID, callback) {
user.getUidByUserslug(userslug, function(err, uid) {
@ -91,7 +90,7 @@ function getUserDataByUserSlug(userslug, callerUID, callback) {
userData.disableSignatures = meta.config.disableSignatures !== undefined && parseInt(meta.config.disableSignatures, 10) === 1;
userData['email:confirmed'] = !!parseInt(userData['email:confirmed'], 10);
userData.profile_links = results.profile_links;
userData.status = websockets.isUserOnline(userData.uid) ? (userData.status || 'online') : 'offline';
userData.status = require('../socket.io').isUserOnline(userData.uid) ? (userData.status || 'online') : 'offline';
userData.banned = parseInt(userData.banned, 10) === 1;
userData.websiteName = userData.website.replace(validator.escape('http://'), '').replace(validator.escape('https://'), '');
userData.followingCount = parseInt(userData.followingCount, 10) || 0;

@ -10,7 +10,6 @@ var db = require('./database'),
utils = require('../public/src/utils'),
notifications = require('./notifications'),
userNotifications = require('./user/notifications'),
websockets = require('./socket.io'),
emailer = require('./emailer');
(function(Messaging) {
@ -257,7 +256,7 @@ var db = require('./database'),
results.users.forEach(function(user, index) {
if (user) {
user.unread = results.unread[index];
user.status = websockets.isUserOnline(user.uid) ? user.status : 'offline';
user.status = require('./socket.io').isUserOnline(user.uid) ? user.status : 'offline';
}
});
@ -320,7 +319,7 @@ var db = require('./database'),
};
function sendNotifications(fromuid, touid, messageObj, callback) {
if (websockets.isUserOnline(touid)) {
if (require('./socket.io').isUserOnline(touid)) {
return callback();
}

@ -6,7 +6,6 @@ var async = require('async'),
user = require('../user'),
groups = require('../groups'),
meta = require('../meta'),
websockets = require('../socket.io'),
postTools = require('../postTools'),
plugins = require('../plugins');
@ -22,7 +21,7 @@ module.exports = function(Posts) {
user.getMultipleUserFields(uids, ['uid', 'username', 'userslug', 'reputation', 'postcount', 'picture', 'signature', 'banned', 'status'], next);
},
online: function(next) {
websockets.isUsersOnline(uids, next);
require('../socket.io').isUsersOnline(uids, next);
}
}, function(err, results) {
if (err) {

Loading…
Cancel
Save