diff options
Diffstat (limited to 'vendor/github.com/go-gitea/go-sdk/gitea/user_email.go')
-rw-r--r-- | vendor/github.com/go-gitea/go-sdk/gitea/user_email.go | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/vendor/github.com/go-gitea/go-sdk/gitea/user_email.go b/vendor/github.com/go-gitea/go-sdk/gitea/user_email.go new file mode 100644 index 0000000000..e9805ecb69 --- /dev/null +++ b/vendor/github.com/go-gitea/go-sdk/gitea/user_email.go @@ -0,0 +1,43 @@ +// Copyright 2015 The Gogs Authors. All rights reserved. +// Use of this source code is governed by a MIT-style +// license that can be found in the LICENSE file. + +package gitea + +import ( + "bytes" + "encoding/json" +) + +type Email struct { + Email string `json:"email"` + Verified bool `json:"verified"` + Primary bool `json:"primary"` +} + +func (c *Client) ListEmails() ([]*Email, error) { + emails := make([]*Email, 0, 3) + return emails, c.getParsedResponse("GET", "/user/emails", nil, nil, &emails) +} + +type CreateEmailOption struct { + Emails []string `json:"emails"` +} + +func (c *Client) AddEmail(opt CreateEmailOption) ([]*Email, error) { + body, err := json.Marshal(&opt) + if err != nil { + return nil, err + } + emails := make([]*Email, 0, 3) + return emails, c.getParsedResponse("POST", "/user/emails", jsonHeader, bytes.NewReader(body), emails) +} + +func (c *Client) DeleteEmail(opt CreateEmailOption) error { + body, err := json.Marshal(&opt) + if err != nil { + return err + } + _, err = c.getResponse("DELETE", "/user/emails", jsonHeader, bytes.NewReader(body)) + return err +} |