2014-03-12 21:41:53 -04:00
|
|
|
'use strict';
|
|
|
|
|
|
2019-07-16 00:41:42 -04:00
|
|
|
const _ = require('lodash');
|
2018-10-20 14:40:48 -04:00
|
|
|
|
2019-07-16 00:41:42 -04:00
|
|
|
const posts = require('../posts');
|
|
|
|
|
const db = require('../database');
|
2014-03-12 21:41:53 -04:00
|
|
|
|
2016-10-13 11:43:39 +02:00
|
|
|
module.exports = function (Categories) {
|
2019-07-16 00:41:42 -04:00
|
|
|
Categories.getActiveUsers = async function (cids) {
|
2019-03-25 12:06:32 -04:00
|
|
|
if (!Array.isArray(cids)) {
|
|
|
|
|
cids = [cids];
|
|
|
|
|
}
|
2021-02-03 23:59:08 -07:00
|
|
|
const pids = await db.getSortedSetRevRange(cids.map(cid => `cid:${cid}:pids`), 0, 24);
|
2019-07-16 00:41:42 -04:00
|
|
|
const postData = await posts.getPostsFields(pids, ['uid']);
|
|
|
|
|
return _.uniq(postData.map(post => post.uid).filter(uid => uid));
|
2014-03-12 21:41:53 -04:00
|
|
|
};
|
2014-04-10 20:31:57 +01:00
|
|
|
};
|