removed 2x calls to getRecentTopicReplies

v1.18.x
barisusakli 10 years ago
parent fa607132be
commit c40258a82c

@ -121,34 +121,31 @@ categoriesController.list = function(req, res, next) {
}, },
categories: function (next) { categories: function (next) {
var uid = req.user ? req.user.uid : 0; var uid = req.user ? req.user.uid : 0;
categories.getCategoriesByPrivilege(uid, 'find', function (err, categoryData) { var categoryData;
if (err) { async.waterfall([
return next(err); function(next) {
} categories.getCategoriesByPrivilege(uid, 'find', next);
var childCategories = []; },
function(_categoryData, next) {
for(var i=categoryData.length - 1; i>=0; --i) { categoryData = _categoryData;
var allCategories = [];
if (Array.isArray(categoryData[i].children) && categoryData[i].children.length) { categoryData = categoryData.filter(function(category) {
childCategories.push.apply(childCategories, categoryData[i].children); if (!category.parent) {
allCategories.push(category);
} }
if (categoryData[i].parent && categoryData[i].parent.cid) { if (Array.isArray(category.children) && category.children.length) {
categoryData.splice(i, 1); allCategories.push.apply(allCategories, category.children);
}
} }
return category && !category.parent;
});
async.parallel([ categories.getRecentTopicReplies(allCategories, uid, next);
function(next) {
categories.getRecentTopicReplies(categoryData, uid, next);
},
function(next) {
categories.getRecentTopicReplies(childCategories, uid, next);
} }
], function(err) { ], function(err) {
next(err, categoryData); next(err, categoryData);
}); });
});
} }
}, function (err, data) { }, function (err, data) {
if (err) { if (err) {

Loading…
Cancel
Save