A pretty crappy example and a load of bug fixes

Much more stable permission management
This commit is contained in:
hydrabolt
2015-10-26 18:43:49 +00:00
parent af18e833f9
commit 7dea4b9e9c
5 changed files with 209 additions and 60 deletions

View File

@@ -814,6 +814,11 @@ var Client = (function () {
var acServer = self.getServer("id", serverId);
var acMember = acServer.getMember("id", memberId);
if (acMember.rawRoles.indexOf(role.id) !== -1) {
// user already has role
return;
}
request.patch("https://discordapp.com/api/guilds/" + serverId + "/members/" + memberId).set("authorization", self.token).send({
roles: acMember.rawRoles.concat(role.id)
}).end(function (err) {
@@ -845,12 +850,12 @@ var Client = (function () {
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);
}
if (~acMember.rawRoles.indexOf(role.id)) {
acMember.removeRole(role);
}
console.log("remainder: ", acMember.rawRoles, "wanting", role.id);
request.patch("https://discordapp.com/api/guilds/" + serverId + "/members/" + memberId).set("authorization", self.token).send({
roles: acMember.rawRoles
}).end(function (err) {