fix: #11136, tests, and returning the proper number of arrays

This commit is contained in:
Julian Lam
2023-01-18 15:08:35 -05:00
parent 39e009c05a
commit 459bc52338
3 changed files with 30 additions and 15 deletions

View File

@@ -101,7 +101,7 @@ Categories.getModerators = async function (cid) {
Categories.getModeratorUids = async function (cids) {
// Only check active categories
const disabled = (await Categories.getCategoriesFields(cids, ['disabled'])).map(obj => obj.disabled);
cids = cids.filter((_, idx) => !disabled[idx]);
// cids = cids.filter((_, idx) => !disabled[idx]);
const groupNames = cids.reduce((memo, cid) => {
memo.push(`cid:${cid}:privileges:moderate`);
@@ -124,9 +124,14 @@ Categories.getModeratorUids = async function (cids) {
const uniqGroups = _.uniq(_.flatten(sets.groupNames));
const groupUids = await groups.getMembersOfGroups(uniqGroups);
const map = _.zipObject(uniqGroups, groupUids);
const moderatorUids = cids.map(
(cid, index) => _.uniq(sets.uids[index].concat(_.flatten(sets.groupNames[index].map(g => map[g]))))
);
const moderatorUids = cids.map((cid, index) => {
if (disabled[index]) {
return [];
}
return _.uniq(sets.uids[index].concat(_.flatten(sets.groupNames[index].map(g => map[g]))));
});
console.log('what', moderatorUids);
return moderatorUids;
};