diff --git a/src/socket.io/groups.js b/src/socket.io/groups.js index d85640e9fa..1b97dad0bb 100644 --- a/src/socket.io/groups.js +++ b/src/socket.io/groups.js @@ -123,8 +123,13 @@ SocketGroups.delete = function(socket, data, callback) { return callback(new Error('[[error:invalid-data]]')); } - groups.ownership.isOwner(socket.uid, data.groupName, function(err, isOwner) { - if (!isOwner) { + var tasks = { + isOwner: async.apply(groups.ownership.isOwner, socket.uid, data.groupName), + isAdmin: async.apply(user.isAdministrator, socket.uid) + }; + + async.parallel(tasks, function(err, checks) { + if (!checks.isOwner && !checks.isAdmin) { return callback(new Error('[[error:no-privileges]]')); }