diff --git a/ghost/core/core/server/models/user.js b/ghost/core/core/server/models/user.js index 080a162074..6633bfb74c 100644 --- a/ghost/core/core/server/models/user.js +++ b/ghost/core/core/server/models/user.js @@ -1005,10 +1005,10 @@ User = ghostBookshelf.Model.extend({ let ownerRole; let contextUser; - return Promise.join( + return Promise.all([ ghostBookshelf.model('Role').findOne({name: 'Owner'}), User.findOne({id: options.context.user}, {withRelated: ['roles']}) - ) + ]) .then((results) => { ownerRole = results[0]; contextUser = results[1]; @@ -1021,8 +1021,10 @@ User = ghostBookshelf.Model.extend({ })); } - return Promise.join(ghostBookshelf.model('Role').findOne({name: 'Administrator'}), - User.findOne({id: object.id}, {withRelated: ['roles']})); + return Promise.all([ + ghostBookshelf.model('Role').findOne({name: 'Administrator'}), + User.findOne({id: object.id}, {withRelated: ['roles']}) + ]); }) .then((results) => { const adminRole = results[0]; @@ -1049,9 +1051,11 @@ User = ghostBookshelf.Model.extend({ } // convert owner to admin - return Promise.join(contextUser.roles().updatePivot({role_id: adminRole.id}), + return Promise.all([ + contextUser.roles().updatePivot({role_id: adminRole.id}), user.roles().updatePivot({role_id: ownerRole.id}), - user.id); + user.id + ]); }) .then((results) => { return Users.forge() diff --git a/ghost/core/test/regression/models/model_users.test.js b/ghost/core/test/regression/models/model_users.test.js index 752404cc54..ceb3411637 100644 --- a/ghost/core/test/regression/models/model_users.test.js +++ b/ghost/core/test/regression/models/model_users.test.js @@ -212,7 +212,10 @@ describe('User Model', function run() { it('can findOne by role name', function () { return testUtils.fixtures.createExtraUsers().then(function () { - return Promise.join(UserModel.findOne({role: 'Owner'}), UserModel.findOne({role: 'Editor'})); + return Promise.all([ + UserModel.findOne({role: 'Owner'}), + UserModel.findOne({role: 'Editor'}) + ]); }).then(function (results) { let owner = results[0]; let editor = results[1];