diff options
author | =Corey Hulen <corey@hulen.com> | 2015-10-19 11:42:40 -0700 |
---|---|---|
committer | =Corey Hulen <corey@hulen.com> | 2015-10-19 11:42:40 -0700 |
commit | 36658c13a4c7ebdfff22b8570e0db52bfa4de000 (patch) | |
tree | dc27373b42b8fe2a5f8ae88191924f27c361afb6 /web/web.go | |
parent | 097d17bf2c4e07a153beb80afb15a546f291a418 (diff) | |
parent | d139c9e825d0149329d90684ebe2d6b31a728b16 (diff) | |
download | chat-36658c13a4c7ebdfff22b8570e0db52bfa4de000.tar.gz chat-36658c13a4c7ebdfff22b8570e0db52bfa4de000.tar.bz2 chat-36658c13a4c7ebdfff22b8570e0db52bfa4de000.zip |
Fixing merge conflicts
Diffstat (limited to 'web/web.go')
-rw-r--r-- | web/web.go | 41 |
1 files changed, 9 insertions, 32 deletions
diff --git a/web/web.go b/web/web.go index 2ae9bb344..701e36e95 100644 --- a/web/web.go +++ b/web/web.go @@ -15,8 +15,11 @@ import ( "gopkg.in/fsnotify.v1" "html/template" "net/http" +<<<<<<< HEAD "net/url" "regexp" +======= +>>>>>>> master "strconv" "strings" ) @@ -1007,9 +1010,6 @@ func incomingWebhook(c *api.Context, w http.ResponseWriter, r *http.Request) { channelName := props["channel"] - overrideUsername := props["username"] - overrideIconUrl := props["icon_url"] - var hook *model.IncomingWebhook if result := <-hchan; result.Err != nil { c.Err = model.NewAppError("incomingWebhook", "Invalid webhook", "err="+result.Err.Message) @@ -1038,12 +1038,8 @@ func incomingWebhook(c *api.Context, w http.ResponseWriter, r *http.Request) { cchan = api.Srv.Store.Channel().Get(hook.ChannelId) } - // parse links into Markdown format - linkWithTextRegex := regexp.MustCompile(`<([^<\|]+)\|([^>]+)>`) - text = linkWithTextRegex.ReplaceAllString(text, "[${2}](${1})") - - linkRegex := regexp.MustCompile(`<\s*(\S*)\s*>`) - text = linkRegex.ReplaceAllString(text, "${1}") + overrideUsername := props["username"] + overrideIconUrl := props["icon_url"] if result := <-cchan; result.Err != nil { c.Err = model.NewAppError("incomingWebhook", "Couldn't find the channel", "err="+result.Err.Message) @@ -1054,35 +1050,16 @@ func incomingWebhook(c *api.Context, w http.ResponseWriter, r *http.Request) { pchan := api.Srv.Store.Channel().CheckPermissionsTo(hook.TeamId, channel.Id, hook.UserId) - post := &model.Post{UserId: hook.UserId, ChannelId: channel.Id, Message: text} - post.AddProp("from_webhook", "true") - - if utils.Cfg.ServiceSettings.EnablePostUsernameOverride { - if len(overrideUsername) != 0 { - post.AddProp("override_username", overrideUsername) - } else { - post.AddProp("override_username", model.DEFAULT_WEBHOOK_USERNAME) - } - } - - if utils.Cfg.ServiceSettings.EnablePostIconOverride { - if len(overrideIconUrl) != 0 { - post.AddProp("override_icon_url", overrideIconUrl) - } else { - post.AddProp("override_icon_url", model.DEFAULT_WEBHOOK_ICON) - } - } + // create a mock session + c.Session = model.Session{UserId: hook.UserId, TeamId: hook.TeamId, IsOAuth: false} if !c.HasPermissionsToChannel(pchan, "createIncomingHook") && channel.Type != model.CHANNEL_OPEN { c.Err = model.NewAppError("incomingWebhook", "Inappropriate channel permissions", "") return } - // create a mock session - c.Session = model.Session{UserId: hook.UserId, TeamId: hook.TeamId, IsOAuth: false} - - if _, err := api.CreatePost(c, post, false); err != nil { - c.Err = model.NewAppError("incomingWebhook", "Error creating post", "err="+err.Message) + if _, err := api.CreateWebhookPost(c, channel.Id, text, overrideUsername, overrideIconUrl); err != nil { + c.Err = err return } |