summaryrefslogtreecommitdiffstats
path: root/model
diff options
context:
space:
mode:
authorCarlos Tadeu Panato Junior <ctadeu@gmail.com>2016-11-22 00:50:57 +0100
committerJoram Wilander <jwawilander@gmail.com>2016-11-21 18:50:57 -0500
commitd57ab7a81e295c0f1a731f1f4f5fa04d5cba398b (patch)
tree92c3505680dbecce1bc933d1257194fd0b6b6790 /model
parent82352e63633f95d546fc2d4b9f768a62cb4b6d58 (diff)
downloadchat-d57ab7a81e295c0f1a731f1f4f5fa04d5cba398b.tar.gz
chat-d57ab7a81e295c0f1a731f1f4f5fa04d5cba398b.tar.bz2
chat-d57ab7a81e295c0f1a731f1f4f5fa04d5cba398b.zip
PLT-3762 - Add API call to get a user by their username (#4611)
* PLT-3762 - Add API call to get a user by their username * fix lint * update rote * update per code review * update per code review * remove first/last name is not used in this test
Diffstat (limited to 'model')
-rw-r--r--model/client.go11
1 files changed, 11 insertions, 0 deletions
diff --git a/model/client.go b/model/client.go
index 1624dc917..32532508f 100644
--- a/model/client.go
+++ b/model/client.go
@@ -500,6 +500,17 @@ func (c *Client) GetUser(id string, etag string) (*Result, *AppError) {
}
}
+// getByUsername returns a user based on a provided username string. Must be authenticated.
+func (c *Client) GetByUsername(username string, etag string) (*Result, *AppError) {
+ if r, err := c.DoApiGet(fmt.Sprintf("/users/name/%v", username), "", etag); err != nil {
+ return nil, err
+ } else {
+ defer closeBody(r)
+ return &Result{r.Header.Get(HEADER_REQUEST_ID),
+ r.Header.Get(HEADER_ETAG_SERVER), UserFromJson(r.Body)}, nil
+ }
+}
+
// GetMe returns the current user.
func (c *Client) GetMe(etag string) (*Result, *AppError) {
if r, err := c.DoApiGet("/users/me", "", etag); err != nil {