some cleanup in addUserInfoToPost

This commit is contained in:
barisusakli
2014-06-12 16:45:00 -04:00
parent b9139ef263
commit e8b89513d4
3 changed files with 54 additions and 46 deletions

View File

@@ -4,10 +4,11 @@
var async = require('async'),
db = require('./../database'),
emitter = require('./../emitter'),
favourites = require('./../favourites'),
posts = require('./../posts'),
db = require('../database'),
user = require('../user'),
emitter = require('../emitter'),
favourites = require('../favourites'),
posts = require('../posts'),
privileges = require('../privileges');
module.exports = function(Topics) {
@@ -45,16 +46,36 @@ module.exports = function(Topics) {
});
async.parallel({
favourites : function(next) {
favourites: function(next) {
favourites.getFavouritesByPostIDs(pids, uid, next);
},
voteData : function(next) {
voteData: function(next) {
favourites.getVoteStatusByPostIDs(pids, uid, next);
},
userData : function(next) {
async.each(postData, posts.addUserInfoToPost, next);
userData: function(next) {
async.each(postData, function(post, next) {
async.parallel({
editor: function(next) {
if (!post.editor) {
return next();
}
user.getUserFields(post.editor, ['username', 'userslug'], next);
},
user: function(next) {
posts.getUserInfoForPost(post, next);
}
}, function(err, results) {
if (err) {
return next(err);
}
post.user = results.user;
post.editor = results.editor;
next();
});
}, next);
},
privileges : function(next) {
privileges: function(next) {
async.map(pids, function (pid, next) {
privileges.posts.get(pid, uid, next);
}, next);