summaryrefslogtreecommitdiffstats
path: root/model/client4.go
diff options
context:
space:
mode:
Diffstat (limited to 'model/client4.go')
-rw-r--r--model/client4.go27
1 files changed, 26 insertions, 1 deletions
diff --git a/model/client4.go b/model/client4.go
index 117f6c570..964218a68 100644
--- a/model/client4.go
+++ b/model/client4.go
@@ -723,7 +723,23 @@ func (c *Client4) AutocompleteUsers(username string, etag string) (*UserAutocomp
}
}
-// GetProfileImage gets user's profile image. Must be logged in or be a system administrator.
+// GetDefaultProfileImage gets the default user's profile image. Must be logged in.
+func (c *Client4) GetDefaultProfileImage(userId string) ([]byte, *Response) {
+ r, appErr := c.DoApiGet(c.GetUserRoute(userId)+"/image/default", "")
+ if appErr != nil {
+ return nil, BuildErrorResponse(r, appErr)
+ }
+ defer closeBody(r)
+
+ data, err := ioutil.ReadAll(r.Body)
+ if err != nil {
+ return nil, BuildErrorResponse(r, NewAppError("GetDefaultProfileImage", "model.client.read_file.app_error", nil, err.Error(), r.StatusCode))
+ }
+
+ return data, BuildResponse(r)
+}
+
+// GetProfileImage gets user's profile image. Must be logged in.
func (c *Client4) GetProfileImage(userId, etag string) ([]byte, *Response) {
if r, err := c.DoApiGet(c.GetUserRoute(userId)+"/image", etag); err != nil {
return nil, BuildErrorResponse(r, err)
@@ -1105,6 +1121,15 @@ func (c *Client4) SendVerificationEmail(email string) (bool, *Response) {
}
}
+// SetDefaultProfileImage resets the profile image to a default generated one
+func (c *Client4) SetDefaultProfileImage(userId string) (bool, *Response) {
+ r, err := c.DoApiDelete(c.GetUserRoute(userId) + "/image")
+ if err != nil {
+ return false, BuildErrorResponse(r, err)
+ }
+ return CheckStatusOK(r), BuildResponse(r)
+}
+
// SetProfileImage sets profile image of the user
func (c *Client4) SetProfileImage(userId string, data []byte) (bool, *Response) {
body := &bytes.Buffer{}