mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-12 09:33:32 +01:00
A pretty crappy example and a load of bug fixes
Much more stable permission management
This commit is contained in:
@@ -881,6 +881,11 @@ class Client {
|
||||
|
||||
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}`)
|
||||
@@ -916,12 +921,12 @@ class Client {
|
||||
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)
|
||||
|
||||
@@ -36,12 +36,25 @@ class Member extends User{
|
||||
});
|
||||
}
|
||||
|
||||
removeRole(role){
|
||||
this.rawRoles.splice(this.rawRoles.indexOf(role.id), 1);
|
||||
}
|
||||
|
||||
addRole(role){
|
||||
if(!~this.rawRoles.indexOf(role)){
|
||||
this.rawRoles.push(role);
|
||||
if(this.rawRoles.indexOf(role.id) == -1){
|
||||
console.log("wanted to add", role.id, this.rawRoles.indexOf(role.id));
|
||||
this.rawRoles.push(role.id);
|
||||
}
|
||||
}
|
||||
|
||||
hasRole(role){
|
||||
for(var _role of this.roles){
|
||||
if(role.id === _role.id)
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
permissionsIn(channel){
|
||||
|
||||
if(channel.server.ownerID === this.id){
|
||||
|
||||
Reference in New Issue
Block a user