Fixed evaluation and added basic deletion following

This commit is contained in:
hydrabolt
2015-10-03 23:13:33 +01:00
parent c60fe26657
commit 4eacab784d
7 changed files with 160 additions and 54 deletions

View File

@@ -1042,6 +1042,17 @@ class Client {
}, 6000);
break;
case "GUILD_ROLE_DELETE":
var server = self.getServer("id", data.guild_id);
var role = server.getRole(data.role_id);
self.trigger("serverRoleDelete", server, role);
server.removeRole(role.id);
break;
default:
self.debug("received unknown packet");

View File

@@ -48,11 +48,15 @@ class Member extends User{
}
}
if(affectingOverwrites.length === 0){
for(var perm of affectingOverwrites){
console.log("hey", perm.attachFiles);
}
if(affectingOverwrites.length === 0 && affectingMemberOverwrites.length === 0){
return new EvaluatedPermissions(this.evalPerms.packed);
}
var finalPacked = affectingOverwrites[0].packed;
var finalPacked = (affectingOverwrites.length !== 0 ? affectingOverwrites[0].packed : affectingMemberOverwrites[0].packed);
for(var overwrite of affectingOverwrites){
finalPacked = finalPacked & ~overwrite.deny;

View File

@@ -83,6 +83,26 @@ class Server {
return null;
}
updateRole(){
}
removeRole(id){
for (var roleId in this.roles) {
if (this.roles[roleId].id === id) {
this.roles.splice(roleId, 1);
}
}
for(var member of this.members){
for(var roleId in member.rawRoles){
if(member.rawRoles[roleId] === id){
member.rawRoles.splice(roleId, 1);
}
}
}
}
getChannel(key, value) {
for (var channel of this.channels) {
if (channel[key] === value) {