summaryrefslogtreecommitdiffstats
path: root/model
diff options
context:
space:
mode:
authorJesús Espino <jespinog@gmail.com>2018-10-02 08:04:38 +0200
committerGitHub <noreply@github.com>2018-10-02 08:04:38 +0200
commitc82a84ed765bd9c4d601b93201d93af92f6ee742 (patch)
tree468b65659656bea32721cda7a193dcc83f93a678 /model
parent3e462713debd5c992aa071bed902110bed88ec67 (diff)
downloadchat-c82a84ed765bd9c4d601b93201d93af92f6ee742.tar.gz
chat-c82a84ed765bd9c4d601b93201d93af92f6ee742.tar.bz2
chat-c82a84ed765bd9c4d601b93201d93af92f6ee742.zip
MM-12067: Add SetDefaultProfileImage to reset the user profile image to a generated one (#9449)
* MM-12067: Add SetDefaultProfileImage to reset the user profile image to a generated one * Allow to get the default profile image for my user * Allowing to reset the last update image date to 0 * PR reviews
Diffstat (limited to 'model')
-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{}