added fetch members function.
This commit is contained in:
		
							
								
								
									
										30
									
								
								server.go
									
									
									
									
									
								
							
							
						
						
									
										30
									
								
								server.go
									
									
									
									
									
								
							| @@ -52,6 +52,12 @@ type Member struct { | ||||
| 	Roles    []string    `json:"roles"` | ||||
| } | ||||
|  | ||||
| // Fetched members struct. | ||||
| type FetchedMembers struct { | ||||
| 	Members []*Member `json:"members"` | ||||
| 	Users   []*User   `json:"users"` | ||||
| } | ||||
|  | ||||
| // Calculate creation date and edit the struct. | ||||
| func (s *Server) CalculateCreationDate() error { | ||||
| 	ulid, err := ulid.Parse(s.Id) | ||||
| @@ -153,6 +159,30 @@ func (s Server) FetchMember(id string) (*Member, error) { | ||||
| 	return member, nil | ||||
| } | ||||
|  | ||||
| // Fetch all of the members from Server. | ||||
| func (s Server) FetchMembers() (*FetchedMembers, error) { | ||||
| 	members := &FetchedMembers{} | ||||
|  | ||||
| 	data, err := s.Client.Request("GET", "/servers/"+s.Id+"/members", []byte{}) | ||||
|  | ||||
| 	if err != nil { | ||||
| 		return members, err | ||||
| 	} | ||||
|  | ||||
| 	err = json.Unmarshal(data, members) | ||||
|  | ||||
| 	if err != nil { | ||||
| 		return members, err | ||||
| 	} | ||||
|  | ||||
| 	// Add client to the user | ||||
| 	for _, i := range members.Users { | ||||
| 		i.Client = s.Client | ||||
| 	} | ||||
|  | ||||
| 	return members, nil | ||||
| } | ||||
|  | ||||
| // Edit a member. | ||||
| func (s Server) EditMember(id string, em *EditMember) error { | ||||
| 	data, err := json.Marshal(em) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user