feat: get rid of async.eachSeries

v1.18.x
Barış Soner Uşaklı 6 years ago
parent ce91288607
commit 99cf47ee08

@ -1,17 +1,16 @@
'use strict'; 'use strict';
var async = require('async'); const _ = require('lodash');
var _ = require('lodash');
var db = require('../database'); const db = require('../database');
var categories = require('../categories'); const categories = require('../categories');
var user = require('../user'); const user = require('../user');
var plugins = require('../plugins'); const plugins = require('../plugins');
var privileges = require('../privileges'); const privileges = require('../privileges');
module.exports = function (Topics) { module.exports = function (Topics) {
var topicTools = {}; const topicTools = {};
Topics.tools = topicTools; Topics.tools = topicTools;
topicTools.delete = async function (tid, uid) { topicTools.delete = async function (tid, uid) {
@ -161,12 +160,10 @@ module.exports = function (Topics) {
throw new Error('[[error:no-privileges]]'); throw new Error('[[error:no-privileges]]');
} }
await async.eachSeries(data, async function (topicData) { const isPinned = await db.isSortedSetMembers('cid:' + cid + ':tids:pinned', tids);
const isPinned = await db.isSortedSetMember('cid:' + cid + ':tids:pinned', topicData.tid); data = data.filter((topicData, index) => isPinned[index]);
if (isPinned) { const bulk = data.map(topicData => ['cid:' + cid + ':tids:pinned', topicData.order, topicData.tid]);
await db.sortedSetAdd('cid:' + cid + ':tids:pinned', topicData.order, topicData.tid); await db.sortedSetAddBulk(bulk);
}
});
}; };
topicTools.move = async function (tid, data) { topicTools.move = async function (tid, data) {

Loading…
Cancel
Save