summaryrefslogtreecommitdiffstats
path: root/model
diff options
context:
space:
mode:
author=Corey Hulen <corey@hulen.com>2016-01-08 22:57:38 -0600
committer=Corey Hulen <corey@hulen.com>2016-01-08 22:57:38 -0600
commite1f4cc4bb004a0a0d4bb6d68ff328233f9f72aa0 (patch)
tree8cf6a2257e43fae745bca6e5da14edd6bb5493f9 /model
parent3fba8e42b140c1189bf3c06882cce5e2231e63da (diff)
downloadchat-e1f4cc4bb004a0a0d4bb6d68ff328233f9f72aa0.tar.gz
chat-e1f4cc4bb004a0a0d4bb6d68ff328233f9f72aa0.tar.bz2
chat-e1f4cc4bb004a0a0d4bb6d68ff328233f9f72aa0.zip
Adding web service methods
Diffstat (limited to 'model')
-rw-r--r--model/client.go29
-rw-r--r--model/command.go9
-rw-r--r--model/utils.go6
3 files changed, 42 insertions, 2 deletions
diff --git a/model/client.go b/model/client.go
index 83d1d316c..3a645e175 100644
--- a/model/client.go
+++ b/model/client.go
@@ -381,7 +381,16 @@ func (c *Client) Command(channelId string, command string, suggest bool) (*Resul
}
func (c *Client) ListCommands() (*Result, *AppError) {
- if r, err := c.DoApiPost("/commands/list", ""); err != nil {
+ if r, err := c.DoApiGet("/commands/list", "", ""); err != nil {
+ return nil, err
+ } else {
+ return &Result{r.Header.Get(HEADER_REQUEST_ID),
+ r.Header.Get(HEADER_ETAG_SERVER), CommandListFromJson(r.Body)}, nil
+ }
+}
+
+func (c *Client) ListTeamCommands() (*Result, *AppError) {
+ if r, err := c.DoApiGet("/commands/list_team_commands", "", ""); err != nil {
return nil, err
} else {
return &Result{r.Header.Get(HEADER_REQUEST_ID),
@@ -398,6 +407,24 @@ func (c *Client) CreateCommand(cmd *Command) (*Result, *AppError) {
}
}
+func (c *Client) RegenCommandToken(data map[string]string) (*Result, *AppError) {
+ if r, err := c.DoApiPost("/commands/regen_token", MapToJson(data)); err != nil {
+ return nil, err
+ } else {
+ return &Result{r.Header.Get(HEADER_REQUEST_ID),
+ r.Header.Get(HEADER_ETAG_SERVER), CommandFromJson(r.Body)}, nil
+ }
+}
+
+func (c *Client) DeleteCommand(data map[string]string) (*Result, *AppError) {
+ if r, err := c.DoApiPost("/commands/delete", MapToJson(data)); err != nil {
+ return nil, err
+ } else {
+ return &Result{r.Header.Get(HEADER_REQUEST_ID),
+ r.Header.Get(HEADER_ETAG_SERVER), MapFromJson(r.Body)}, nil
+ }
+}
+
func (c *Client) GetAudits(id string, etag string) (*Result, *AppError) {
if r, err := c.DoApiGet("/users/"+id+"/audits", "", etag); err != nil {
return nil, err
diff --git a/model/command.go b/model/command.go
index 253021896..c917a46ea 100644
--- a/model/command.go
+++ b/model/command.go
@@ -133,3 +133,12 @@ func (o *Command) PreSave() {
func (o *Command) PreUpdate() {
o.UpdateAt = GetMillis()
}
+
+func (o *Command) Sanatize() {
+ o.Token = ""
+ o.CreatorId = ""
+ o.Method = ""
+ o.URL = ""
+ o.Username = ""
+ o.IconURL = ""
+}
diff --git a/model/utils.go b/model/utils.go
index 617c95efd..301e36f59 100644
--- a/model/utils.go
+++ b/model/utils.go
@@ -54,7 +54,11 @@ func AppErrorFromJson(data io.Reader) *AppError {
if err == nil {
return &er
} else {
- return NewAppError("AppErrorFromJson", "could not decode", err.Error())
+ buf := new(bytes.Buffer)
+ buf.ReadFrom(data)
+ s := buf.String()
+
+ return NewAppError("AppErrorFromJson", "could not decode", err.Error()+" "+s)
}
}