mirror of
https://github.com/NodeBB/NodeBB.git
synced 2026-05-07 07:47:58 +02:00
breaking: removal of deprecated privilege hooks
* filter:privileges.global.list * filter:privileges.global.groups.list * filter:privileges.global.list_human * filter:privileges.global.groups.list_human * filter:privileges.list * filter:privileges.groups.list * filter:privileges.list_human * filter:privileges.groups.list_human * filter:privileges.admin.list * filter:privileges.admin.groups.list * filter:privileges.admin.list_human * filter:privileges.admin.groups.list_human
This commit is contained in:
@@ -8,67 +8,11 @@ const als = require('../als');
|
|||||||
const Hooks = module.exports;
|
const Hooks = module.exports;
|
||||||
|
|
||||||
Hooks._deprecated = new Map([
|
Hooks._deprecated = new Map([
|
||||||
['filter:privileges.global.list', {
|
/* ['filter:old.hook.name', {
|
||||||
new: 'static:privileges.global.init',
|
new: 'filter:new.hook.name',
|
||||||
since: 'v3.5.0',
|
since: 'v4.0.0',
|
||||||
until: 'v4.0.0',
|
until: 'v5.0.0',
|
||||||
}],
|
}], */
|
||||||
['filter:privileges.global.groups.list', {
|
|
||||||
new: 'static:privileges.global.init',
|
|
||||||
since: 'v3.5.0',
|
|
||||||
until: 'v4.0.0',
|
|
||||||
}],
|
|
||||||
['filter:privileges.global.list_human', {
|
|
||||||
new: 'static:privileges.global.init',
|
|
||||||
since: 'v3.5.0',
|
|
||||||
until: 'v4.0.0',
|
|
||||||
}],
|
|
||||||
['filter:privileges.global.groups.list_human', {
|
|
||||||
new: 'static:privileges.global.init',
|
|
||||||
since: 'v3.5.0',
|
|
||||||
until: 'v4.0.0',
|
|
||||||
}],
|
|
||||||
['filter:privileges.list', {
|
|
||||||
new: 'static:privileges.categories.init',
|
|
||||||
since: 'v3.5.0',
|
|
||||||
until: 'v4.0.0',
|
|
||||||
}],
|
|
||||||
['filter:privileges.groups.list', {
|
|
||||||
new: 'static:privileges.categories.init',
|
|
||||||
since: 'v3.5.0',
|
|
||||||
until: 'v4.0.0',
|
|
||||||
}],
|
|
||||||
['filter:privileges.list_human', {
|
|
||||||
new: 'static:privileges.categories.init',
|
|
||||||
since: 'v3.5.0',
|
|
||||||
until: 'v4.0.0',
|
|
||||||
}],
|
|
||||||
['filter:privileges.groups.list_human', {
|
|
||||||
new: 'static:privileges.categories.init',
|
|
||||||
since: 'v3.5.0',
|
|
||||||
until: 'v4.0.0',
|
|
||||||
}],
|
|
||||||
|
|
||||||
['filter:privileges.admin.list', {
|
|
||||||
new: 'static:privileges.admin.init',
|
|
||||||
since: 'v3.5.0',
|
|
||||||
until: 'v4.0.0',
|
|
||||||
}],
|
|
||||||
['filter:privileges.admin.groups.list', {
|
|
||||||
new: 'static:privileges.admin.init',
|
|
||||||
since: 'v3.5.0',
|
|
||||||
until: 'v4.0.0',
|
|
||||||
}],
|
|
||||||
['filter:privileges.admin.list_human', {
|
|
||||||
new: 'static:privileges.admin.init',
|
|
||||||
since: 'v3.5.0',
|
|
||||||
until: 'v4.0.0',
|
|
||||||
}],
|
|
||||||
['filter:privileges.admin.groups.list_human', {
|
|
||||||
new: 'static:privileges.admin.init',
|
|
||||||
since: 'v3.5.0',
|
|
||||||
until: 'v4.0.0',
|
|
||||||
}],
|
|
||||||
]);
|
]);
|
||||||
|
|
||||||
Hooks.internals = {
|
Hooks.internals = {
|
||||||
|
|||||||
@@ -39,8 +39,8 @@ privsAdmin.init = async () => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
privsAdmin.getUserPrivilegeList = async () => await plugins.hooks.fire('filter:privileges.admin.list', Array.from(_privilegeMap.keys()));
|
privsAdmin.getUserPrivilegeList = () => Array.from(_privilegeMap.keys());
|
||||||
privsAdmin.getGroupPrivilegeList = async () => await plugins.hooks.fire('filter:privileges.admin.groups.list', Array.from(_privilegeMap.keys()).map(privilege => `groups:${privilege}`));
|
privsAdmin.getGroupPrivilegeList = () => Array.from(_privilegeMap.keys()).map(privilege => `groups:${privilege}`);
|
||||||
privsAdmin.getPrivilegeList = async () => {
|
privsAdmin.getPrivilegeList = async () => {
|
||||||
const [user, group] = await Promise.all([
|
const [user, group] = await Promise.all([
|
||||||
privsAdmin.getUserPrivilegeList(),
|
privsAdmin.getUserPrivilegeList(),
|
||||||
@@ -149,18 +149,12 @@ privsAdmin.list = async function (uid) {
|
|||||||
groupPrivilegeList.splice(idx, 1);
|
groupPrivilegeList.splice(idx, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
const labels = await utils.promiseParallel({
|
|
||||||
users: plugins.hooks.fire('filter:privileges.admin.list_human', privilegeLabels.slice()),
|
|
||||||
groups: plugins.hooks.fire('filter:privileges.admin.groups.list_human', privilegeLabels.slice()),
|
|
||||||
});
|
|
||||||
|
|
||||||
const keys = {
|
const keys = {
|
||||||
users: userPrivilegeList,
|
users: userPrivilegeList,
|
||||||
groups: groupPrivilegeList,
|
groups: groupPrivilegeList,
|
||||||
};
|
};
|
||||||
|
|
||||||
const payload = await utils.promiseParallel({
|
const payload = await utils.promiseParallel({
|
||||||
labels,
|
|
||||||
labelData: Array.from(_privilegeMap.values()),
|
labelData: Array.from(_privilegeMap.values()),
|
||||||
users: helpers.getUserPrivileges(0, keys.users),
|
users: helpers.getUserPrivileges(0, keys.users),
|
||||||
groups: helpers.getGroupPrivileges(0, keys.groups),
|
groups: helpers.getGroupPrivileges(0, keys.groups),
|
||||||
|
|||||||
@@ -53,8 +53,8 @@ privsCategories.getType = function (privilege) {
|
|||||||
return priv && priv.type ? priv.type : '';
|
return priv && priv.type ? priv.type : '';
|
||||||
};
|
};
|
||||||
|
|
||||||
privsCategories.getUserPrivilegeList = async () => await plugins.hooks.fire('filter:privileges.list', Array.from(_privilegeMap.keys()));
|
privsCategories.getUserPrivilegeList = () => Array.from(_privilegeMap.keys());
|
||||||
privsCategories.getGroupPrivilegeList = async () => await plugins.hooks.fire('filter:privileges.groups.list', Array.from(_privilegeMap.keys()).map(privilege => `groups:${privilege}`));
|
privsCategories.getGroupPrivilegeList = () => Array.from(_privilegeMap.keys()).map(privilege => `groups:${privilege}`);
|
||||||
|
|
||||||
privsCategories.getPrivilegeList = async () => {
|
privsCategories.getPrivilegeList = async () => {
|
||||||
const [user, group] = await Promise.all([
|
const [user, group] = await Promise.all([
|
||||||
@@ -72,27 +72,20 @@ privsCategories.getPrivilegesByFilter = function (filter) {
|
|||||||
|
|
||||||
// Method used in admin/category controller to show all users/groups with privs in that given cid
|
// Method used in admin/category controller to show all users/groups with privs in that given cid
|
||||||
privsCategories.list = async function (cid) {
|
privsCategories.list = async function (cid) {
|
||||||
let labels = Array.from(_privilegeMap.values()).map(data => data.label);
|
|
||||||
labels = await utils.promiseParallel({
|
|
||||||
users: plugins.hooks.fire('filter:privileges.list_human', labels.slice()),
|
|
||||||
groups: plugins.hooks.fire('filter:privileges.groups.list_human', labels.slice()),
|
|
||||||
});
|
|
||||||
|
|
||||||
const keys = await utils.promiseParallel({
|
const keys = await utils.promiseParallel({
|
||||||
users: privsCategories.getUserPrivilegeList(),
|
users: privsCategories.getUserPrivilegeList(),
|
||||||
groups: privsCategories.getGroupPrivilegeList(),
|
groups: privsCategories.getGroupPrivilegeList(),
|
||||||
});
|
});
|
||||||
|
|
||||||
const payload = await utils.promiseParallel({
|
const payload = await utils.promiseParallel({
|
||||||
labels,
|
|
||||||
labelData: Array.from(_privilegeMap.values()),
|
labelData: Array.from(_privilegeMap.values()),
|
||||||
users: helpers.getUserPrivileges(cid, keys.users),
|
users: helpers.getUserPrivileges(cid, keys.users),
|
||||||
groups: helpers.getGroupPrivileges(cid, keys.groups),
|
groups: helpers.getGroupPrivileges(cid, keys.groups),
|
||||||
});
|
});
|
||||||
payload.keys = keys;
|
payload.keys = keys;
|
||||||
|
|
||||||
payload.columnCountUserOther = payload.labels.users.length - privsCategories._coreSize;
|
payload.columnCountUserOther = payload.labelData.length - privsCategories._coreSize;
|
||||||
payload.columnCountGroupOther = payload.labels.groups.length - privsCategories._coreSize;
|
payload.columnCountGroupOther = payload.labelData.length - privsCategories._coreSize;
|
||||||
|
|
||||||
return payload;
|
return payload;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -54,8 +54,8 @@ privsGlobal.getType = function (privilege) {
|
|||||||
return priv && priv.type ? priv.type : '';
|
return priv && priv.type ? priv.type : '';
|
||||||
};
|
};
|
||||||
|
|
||||||
privsGlobal.getUserPrivilegeList = async () => await plugins.hooks.fire('filter:privileges.global.list', Array.from(_privilegeMap.keys()));
|
privsGlobal.getUserPrivilegeList = () => Array.from(_privilegeMap.keys());
|
||||||
privsGlobal.getGroupPrivilegeList = async () => await plugins.hooks.fire('filter:privileges.global.groups.list', Array.from(_privilegeMap.keys()).map(privilege => `groups:${privilege}`));
|
privsGlobal.getGroupPrivilegeList = () => Array.from(_privilegeMap.keys()).map(privilege => `groups:${privilege}`);
|
||||||
privsGlobal.getPrivilegeList = async () => {
|
privsGlobal.getPrivilegeList = async () => {
|
||||||
const [user, group] = await Promise.all([
|
const [user, group] = await Promise.all([
|
||||||
privsGlobal.getUserPrivilegeList(),
|
privsGlobal.getUserPrivilegeList(),
|
||||||
@@ -65,21 +65,12 @@ privsGlobal.getPrivilegeList = async () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
privsGlobal.list = async function () {
|
privsGlobal.list = async function () {
|
||||||
async function getLabels() {
|
|
||||||
const labels = Array.from(_privilegeMap.values()).map(data => data.label);
|
|
||||||
return await utils.promiseParallel({
|
|
||||||
users: plugins.hooks.fire('filter:privileges.global.list_human', labels.slice()),
|
|
||||||
groups: plugins.hooks.fire('filter:privileges.global.groups.list_human', labels.slice()),
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
const keys = await utils.promiseParallel({
|
const keys = await utils.promiseParallel({
|
||||||
users: privsGlobal.getUserPrivilegeList(),
|
users: privsGlobal.getUserPrivilegeList(),
|
||||||
groups: privsGlobal.getGroupPrivilegeList(),
|
groups: privsGlobal.getGroupPrivilegeList(),
|
||||||
});
|
});
|
||||||
|
|
||||||
const payload = await utils.promiseParallel({
|
const payload = await utils.promiseParallel({
|
||||||
labels: getLabels(),
|
|
||||||
labelData: Array.from(_privilegeMap.values()),
|
labelData: Array.from(_privilegeMap.values()),
|
||||||
users: helpers.getUserPrivileges(0, keys.users),
|
users: helpers.getUserPrivileges(0, keys.users),
|
||||||
groups: helpers.getGroupPrivileges(0, keys.groups),
|
groups: helpers.getGroupPrivileges(0, keys.groups),
|
||||||
|
|||||||
Reference in New Issue
Block a user