diff --git a/lib/models/room.js b/lib/models/room.js index 74ddcad50..c5b5623ee 100644 --- a/lib/models/room.js +++ b/lib/models/room.js @@ -56,8 +56,17 @@ utils.inherits(Room, EventEmitter); * @return {RoomMember[]} A list of currently joined members. */ Room.prototype.getJoinedMembers = function() { + return this.getMembersWithMemership("join"); + }; + +/** + * Get a list of members with given membership state. + * @param {string} membership The membership state. + * @return {RoomMember[]} A list of members with the given membership state. + */ + Room.prototype.getMembersWithMemership = function(membership) { return utils.filter(this.currentState.getMembers(), function(m) { - return m.membership === "join"; + return m.membership === membership; }); };