Merge pull request #1514 from bahdcoder/fix-user-roles-and-permissions

Fix user roles and permissions issue
This commit is contained in:
Jim LAURIE 2018-07-17 12:22:54 +02:00 committed by GitHub
commit 29507efd68
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -199,7 +199,11 @@ module.exports = {
},
updatePermissions: async function (cb) {
const actions = strapi.plugins['users-permissions'].config.actions || [];
// fetch all the current permissions from the database, and format them into an array of actions.
const databasePermissions = await strapi.query('permission', 'users-permissions').find();
const actions = databasePermissions
.map(permission => `${permission.type}.${permission.controller}.${permission.action}`);
// Aggregate first level actions.
const appActions = Object.keys(strapi.api || {}).reduce((acc, api) => {
@ -232,7 +236,7 @@ module.exports = {
// Merge array into one.
const currentActions = appActions.concat(pluginsActions);
// Count permissions available.
const permissions = await strapi.query('permission', 'users-permissions').count();
const permissions = databasePermissions.length;
// Compare to know if actions have been added or removed from controllers.
if (!_.isEqual(actions, currentActions) || permissions < 1) {