|
@@ -179,9 +179,24 @@ func (s *Session) User(userID string) (st *User, err error) {
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
-// UserUpdate updates a users settings.
|
|
|
|
|
|
+// UserAvatar returns an image.Image of a users Avatar
|
|
// userID : A user ID or "@me" which is a shortcut of current user ID
|
|
// userID : A user ID or "@me" which is a shortcut of current user ID
|
|
-func (s *Session) UserUpdate(userID, email, password, username, avatar, newPassword string) (st *User, err error) {
|
|
|
|
|
|
+func (s *Session) UserAvatar(userID string) (img image.Image, err error) {
|
|
|
|
+ u, err := s.User(userID)
|
|
|
|
+ if err != nil {
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ body, err := s.Request("GET", USER_AVATAR(userID, u.Avatar), nil)
|
|
|
|
+ if err != nil {
|
|
|
|
+ return nil, err
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ img, _, err = image.Decode(bytes.NewReader(body))
|
|
|
|
+ return
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+// UserUpdate updates a users settings.
|
|
|
|
+func (s *Session) UserUpdate(email, password, username, avatar, newPassword string) (st *User, err error) {
|
|
|
|
|
|
// NOTE: Avatar must be either the hash/id of existing Avatar or
|
|
// NOTE: Avatar must be either the hash/id of existing Avatar or
|
|
// data:image/png;base64,BASE64_STRING_OF_NEW_AVATAR_PNG
|
|
// data:image/png;base64,BASE64_STRING_OF_NEW_AVATAR_PNG
|
|
@@ -196,70 +211,46 @@ func (s *Session) UserUpdate(userID, email, password, username, avatar, newPassw
|
|
NewPassword string `json:"new_password,omitempty"`
|
|
NewPassword string `json:"new_password,omitempty"`
|
|
}{email, password, username, avatar, newPassword}
|
|
}{email, password, username, avatar, newPassword}
|
|
|
|
|
|
- body, err := s.Request("PATCH", USER(userID), data)
|
|
|
|
|
|
+ body, err := s.Request("PATCH", USER("@me"), data)
|
|
err = json.Unmarshal(body, &st)
|
|
err = json.Unmarshal(body, &st)
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
-// UserAvatar returns an image.Image of a users Avatar
|
|
|
|
-// userID : A user ID or "@me" which is a shortcut of current user ID
|
|
|
|
-func (s *Session) UserAvatar(userID string) (img image.Image, err error) {
|
|
|
|
- u, err := s.User(userID)
|
|
|
|
- if err != nil {
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
- body, err := s.Request("GET", USER_AVATAR(userID, u.Avatar), nil)
|
|
|
|
- if err != nil {
|
|
|
|
- return nil, err
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- img, _, err = image.Decode(bytes.NewReader(body))
|
|
|
|
- return
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
// UserSettings returns the settings for a given user
|
|
// UserSettings returns the settings for a given user
|
|
-// userID : A user ID or "@me" which is a shortcut of current user ID
|
|
|
|
-// This seems to only return a result for "@me"
|
|
|
|
func (s *Session) UserSettings(userID string) (st *Settings, err error) {
|
|
func (s *Session) UserSettings(userID string) (st *Settings, err error) {
|
|
|
|
|
|
- body, err := s.Request("GET", USER_SETTINGS(userID), nil)
|
|
|
|
|
|
+ body, err := s.Request("GET", USER_SETTINGS("@me"), nil)
|
|
err = json.Unmarshal(body, &st)
|
|
err = json.Unmarshal(body, &st)
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
// UserChannels returns an array of Channel structures for all private
|
|
// UserChannels returns an array of Channel structures for all private
|
|
-// channels for a user
|
|
|
|
-// userID : A user ID or "@me" which is a shortcut of current user ID
|
|
|
|
-func (s *Session) UserChannels(userID string) (st []*Channel, err error) {
|
|
|
|
|
|
+// channels.
|
|
|
|
+func (s *Session) UserChannels() (st []*Channel, err error) {
|
|
|
|
|
|
- body, err := s.Request("GET", USER_CHANNELS(userID), nil)
|
|
|
|
|
|
+ body, err := s.Request("GET", USER_CHANNELS("@me"), nil)
|
|
err = json.Unmarshal(body, &st)
|
|
err = json.Unmarshal(body, &st)
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
// UserChannelCreate creates a new User (Private) Channel with another User
|
|
// UserChannelCreate creates a new User (Private) Channel with another User
|
|
-// userID : A user ID or "@me" which is a shortcut of current user ID
|
|
|
|
// recipientID : A user ID for the user to which this channel is opened with.
|
|
// recipientID : A user ID for the user to which this channel is opened with.
|
|
-func (s *Session) UserChannelCreate(userID, recipientID string) (st *Channel, err error) {
|
|
|
|
|
|
+func (s *Session) UserChannelCreate(recipientID string) (st *Channel, err error) {
|
|
|
|
|
|
data := struct {
|
|
data := struct {
|
|
RecipientID string `json:"recipient_id"`
|
|
RecipientID string `json:"recipient_id"`
|
|
}{recipientID}
|
|
}{recipientID}
|
|
|
|
|
|
- body, err := s.Request(
|
|
|
|
- "POST",
|
|
|
|
- USER_CHANNELS(userID),
|
|
|
|
- data)
|
|
|
|
|
|
+ body, err := s.Request("POST", USER_CHANNELS("@me"), data)
|
|
|
|
|
|
err = json.Unmarshal(body, &st)
|
|
err = json.Unmarshal(body, &st)
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
-// UserGuilds returns an array of Guild structures for all guilds for a given user
|
|
|
|
-// userID : A user ID or "@me" which is a shortcut of current user ID
|
|
|
|
-func (s *Session) UserGuilds(userID string) (st []*Guild, err error) {
|
|
|
|
|
|
+// UserGuilds returns an array of Guild structures for all guilds.
|
|
|
|
+func (s *Session) UserGuilds() (st []*Guild, err error) {
|
|
|
|
|
|
- body, err := s.Request("GET", USER_GUILDS(userID), nil)
|
|
|
|
|
|
+ body, err := s.Request("GET", USER_GUILDS("@me"), nil)
|
|
err = json.Unmarshal(body, &st)
|
|
err = json.Unmarshal(body, &st)
|
|
return
|
|
return
|
|
}
|
|
}
|