memberHasRole, membersWithRole

This commit is contained in:
abalabahaha
2016-01-29 17:02:40 -08:00
parent 2c8747995a
commit ee2172c1d5
8 changed files with 83 additions and 58 deletions

View File

@@ -338,6 +338,16 @@ export default class Client extends EventEmitter {
return this.addMemberToRole(member, role, callback);
}
// def addUserToRole
memberHasRole(member, role) {
return this.internal.memberHasRole(member, role);
}
// def addUserToRole
userHasRole(member, role, callback = (/*err, {}*/) => { }) {
return this.memberHasRole(member, role, callback);
}
// def removeMemberFromRole
removeMemberFromRole(member, role, callback = (/*err, {}*/) => { }) {
return this.internal.removeMemberFromRole(member, role)
@@ -349,28 +359,6 @@ export default class Client extends EventEmitter {
return this.removeMemberFromRole(member, role, callback);
}
// def addMemberToRole
addMemberToRoles(member, roles, callback = (/*err, {}*/) => { }) {
return this.internal.addMemberToRoles(member, roles)
.then(dataCallback(callback), errorCallback(callback));
}
// def addUserToRole
addUserToRoles(member, roles, callback = (/*err, {}*/) => { }) {
return this.addMemberToRoles(member, roles, callback);
}
// def removeMemberFromRole
removeMemberFromRoles(member, roles, callback = (/*err, {}*/) => { }) {
return this.internal.removeMemberFromRoles(member, roles)
.then(dataCallback(callback), errorCallback(callback));
}
// def removeUserFromRole
removeUserFromRoles(member, roles, callback = (/*err, {}*/) => { }) {
return this.removeMemberFromRoles(member, roles, callback);
}
// def createInvite
createInvite(chanServ, options, callback = (/*err, invite*/) => { }) {
if (typeof options === "function") {

View File

@@ -657,7 +657,7 @@ export default class InternalClient {
member = this.resolver.resolveUser(member);
if (!member) {
return Promise.reject(new Error("member not in server"));
return Promise.reject(new Error("user not found"));
}
if (!Array.isArray(roles) || roles.length === 0) {
@@ -690,12 +690,22 @@ export default class InternalClient {
);
}
memberHasRole(member, role) {
member = this.resolver.resolveUser(member);
if (!member) {
throw new Error("user not found");
}
return !!role.server.rolesOf(member).find(r => r.id == role.id);
}
//def removeMemberFromRole
removeMemberFromRole(member, roles) {
member = this.resolver.resolveUser(member);
if (!member) {
return Promise.reject(new Error("member not in server"));
return Promise.reject(new Error("user not found"));
}
if (!Array.isArray(roles) || roles.length === 0) {