Testing alternate role resolving

This commit is contained in:
abalabahaha
2016-05-12 17:30:44 -07:00
parent 873f78b02a
commit e7882a38ee
4 changed files with 28 additions and 38 deletions

View File

@@ -91,9 +91,7 @@ var Server = (function (_Equality) {
} else {
data.members.forEach(function (dataUser) {
_this.memberMap[dataUser.user.id] = {
roles: dataUser.roles.map(function (pid) {
return self.roles.get("id", pid);
}),
roles: dataUser.roles,
mute: dataUser.mute,
selfMute: dataUser.self_mute,
deaf: dataUser.deaf,
@@ -174,9 +172,17 @@ var Server = (function (_Equality) {
}
Server.prototype.detailsOf = function detailsOf(user) {
var _this2 = this;
user = this.client.internal.resolver.resolveUser(user);
if (user) {
return this.memberMap[user.id] || {};
var result = this.memberMap[user.id] || {};
if (result && result.roles) {
result.roles = result.roles.map(function (pid) {
return _this2.roles.get("id", pid);
});
}
return result;
} else {
return {};
}
@@ -195,12 +201,7 @@ var Server = (function (_Equality) {
};
Server.prototype.rolesOfUser = function rolesOfUser(user) {
user = this.client.internal.resolver.resolveUser(user);
if (user) {
return this.memberMap[user.id] ? this.memberMap[user.id].roles : [];
} else {
return [];
}
return this.detailsOf(user).roles || [];
};
Server.prototype.rolesOfMember = function rolesOfMember(member) {