mirror of
https://github.com/NodeBB/NodeBB.git
synced 2026-05-07 13:05:49 +02:00
changed behaviour of privilege table so that groups without explicit privileges are not shown in the privilege table
This commit is contained in:
@@ -101,19 +101,25 @@ module.exports = function(privileges) {
|
||||
groupNames.splice(0, 0, groupNames.splice(groupNames.indexOf('registered-users'), 1)[0]);
|
||||
groupNames.splice(groupNames.indexOf('administrators'), 1);
|
||||
|
||||
var memberData = groupNames.filter(function(member) {
|
||||
var memberPrivs, boolSet,
|
||||
memberData = groupNames.filter(function(member) {
|
||||
return member.indexOf(':privileges:') === -1;
|
||||
}).map(function(member) {
|
||||
var memberPrivs = {};
|
||||
memberPrivs = {};
|
||||
boolSet = []; // Here, the boolSet is used as a quick way to determine whether a given group's privilege set is empty or not (see below)
|
||||
for(var x=0,numPrivs=privileges.length;x<numPrivs;x++) {
|
||||
memberPrivs[privileges[x]] = memberSets[x].indexOf(member) !== -1;
|
||||
boolSet.push(memberPrivs[privileges[x]] = memberSets[x].indexOf(member) !== -1);
|
||||
}
|
||||
|
||||
return {
|
||||
name: member,
|
||||
privileges: memberPrivs,
|
||||
};
|
||||
});
|
||||
if (boolSet.some(Boolean)) {
|
||||
return {
|
||||
name: member,
|
||||
privileges: memberPrivs,
|
||||
};
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
}).filter(Boolean);
|
||||
|
||||
next(null, memberData);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user