aboutsummaryrefslogtreecommitdiffhomepage
path: root/vendor/github.com/miniflux/miniflux-go/client.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/miniflux/miniflux-go/client.go')
-rw-r--r--vendor/github.com/miniflux/miniflux-go/client.go21
1 files changed, 19 insertions, 2 deletions
diff --git a/vendor/github.com/miniflux/miniflux-go/client.go b/vendor/github.com/miniflux/miniflux-go/client.go
index 7350a70..8440a31 100644
--- a/vendor/github.com/miniflux/miniflux-go/client.go
+++ b/vendor/github.com/miniflux/miniflux-go/client.go
@@ -33,8 +33,8 @@ func (c *Client) Users() (Users, error) {
return users, nil
}
-// User returns a single user.
-func (c *Client) User(userID int64) (*User, error) {
+// UserByID returns a single user.
+func (c *Client) UserByID(userID int64) (*User, error) {
body, err := c.request.Get(fmt.Sprintf("/v1/users/%d", userID))
if err != nil {
return nil, err
@@ -50,6 +50,23 @@ func (c *Client) User(userID int64) (*User, error) {
return &user, nil
}
+// UserByUsername returns a single user.
+func (c *Client) UserByUsername(username string) (*User, error) {
+ body, err := c.request.Get(fmt.Sprintf("/v1/users/%s", username))
+ if err != nil {
+ return nil, err
+ }
+ defer body.Close()
+
+ var user User
+ decoder := json.NewDecoder(body)
+ if err := decoder.Decode(&user); err != nil {
+ return nil, fmt.Errorf("miniflux: response error (%v)", err)
+ }
+
+ return &user, nil
+}
+
// CreateUser creates a new user in the system.
func (c *Client) CreateUser(username, password string, isAdmin bool) (*User, error) {
body, err := c.request.Post("/v1/users", &User{Username: username, Password: password, IsAdmin: isAdmin})