Add limit and offset to GuildMembers, closes #105

This commit is contained in:
Bruce Marriner 2016-02-19 00:42:52 -06:00
parent a5130cff51
commit e0010ab0ba

View file

@ -453,9 +453,27 @@ func (s *Session) GuildBanDelete(guildID, userID string) (err error) {
// GuildMembers returns a list of members for a guild. // GuildMembers returns a list of members for a guild.
// guildID : The ID of a Guild. // guildID : The ID of a Guild.
func (s *Session) GuildMembers(guildID string) (st []*Member, err error) { // offset : A number of members to skip
// limit : max number of members to return
func (s *Session) GuildMembers(guildID string, offset, limit int) (st []*Member, err error) {
body, err := s.Request("GET", GUILD_MEMBERS(guildID), nil) uri := GUILD_MEMBERS(guildID)
v := url.Values{}
if offset > 0 {
v.Set("offset", strconv.Itoa(offset))
}
if limit > 0 {
v.Set("limit", strconv.Itoa(limit))
}
if len(v) > 0 {
uri = fmt.Sprintf("%s?%s", uri, v.Encode())
}
body, err := s.Request("GET", uri, nil)
if err != nil { if err != nil {
return return
} }
@ -464,7 +482,7 @@ func (s *Session) GuildMembers(guildID string) (st []*Member, err error) {
return return
} }
// GuildMember returns a members of a guild. // GuildMember returns a member of a guild.
// guildID : The ID of a Guild. // guildID : The ID of a Guild.
// userID : The ID of a User // userID : The ID of a User
func (s *Session) GuildMember(guildID, userID string) (st *Member, err error) { func (s *Session) GuildMember(guildID, userID string) (st *Member, err error) {