changed behaviour of privilege table so that groups without explicit privileges are not shown in the privilege table

v1.18.x
Julian Lam 10 years ago
parent 4a0bc1fb03
commit cbb0542984

@ -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);
});

Loading…
Cancel
Save