Added ability to remove members from roles

This commit is contained in:
hydrabolt
2015-10-26 16:20:46 +00:00
parent acd7dfc404
commit 9124b2c8b3
3 changed files with 81 additions and 8 deletions

View File

@@ -832,6 +832,43 @@ var Client = (function () {
});
};
Client.prototype.removeMemberFromRole = function removeMemberFromRole(member, role) {
var callback = arguments.length <= 2 || arguments[2] === undefined ? function (err) {} : arguments[2];
var self = this;
return new Promise(function (resolve, reject) {
try {
var serverId = self.resolveServerID(member.server);
var memberId = self.resolveUserID(member);
var acServer = self.getServer("id", serverId);
var acMember = acServer.getMember("id", memberId);
for (var safeRole in acMember.rawRoles) {
if (acMember.rawRoles[safeRole] == role.id) {
acMember.rawRoles.splice(safeRole, 1);
}
}
request.patch("https://discordapp.com/api/guilds/" + serverId + "/members/" + memberId).set("authorization", self.token).send({
roles: acMember.rawRoles
}).end(function (err) {
if (err) {
reject(err);
callback(err);
} else {
acMember.addRole(role);
resolve();
callback();
}
});
} catch (e) {
reject(e);
}
});
};
//def createws
Client.prototype.createws = function createws(url) {
@@ -983,6 +1020,7 @@ var Client = (function () {
}
var mentions = [];
for (var _iterator7 = data.mentions, _isArray7 = Array.isArray(_iterator7), _i7 = 0, _iterator7 = _isArray7 ? _iterator7 : _iterator7[Symbol.iterator]();;) {
var _ref7;