diff options
author | Unknwon <u@gogs.io> | 2017-02-21 13:58:00 -0500 |
---|---|---|
committer | Unknwon <u@gogs.io> | 2017-02-21 13:58:00 -0500 |
commit | 0f3155660ebecdc4fd3e453a59b4e0f474d5e33c (patch) | |
tree | ab7b6eea85075f2e5b63318065e78ab24e2e5158 /models/webhook_discord.go | |
parent | 437df04d8c8de62e3c75c38d34d305c3dea5bafe (diff) |
webhook: minor improvements on Discord
Diffstat (limited to 'models/webhook_discord.go')
-rw-r--r-- | models/webhook_discord.go | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/models/webhook_discord.go b/models/webhook_discord.go index aa387fe6..8830e85b 100644 --- a/models/webhook_discord.go +++ b/models/webhook_discord.go @@ -12,6 +12,8 @@ import ( "github.com/gogits/git-module" api "github.com/gogits/go-gogs-client" + + "github.com/gogits/gogs/modules/setting" ) type DiscordEmbedFooterObject struct { @@ -56,6 +58,10 @@ func (p *DiscordPayload) JSONPayload() ([]byte, error) { return data, nil } +func DiscordTextFormatter(s string) string { + return strings.Split(s, "\n")[0] +} + func DiscordLinkFormatter(url string, text string) string { return fmt.Sprintf("[%s](%s)", text, url) } @@ -78,6 +84,7 @@ func getDiscordCreatePayload(p *api.CreatePayload, slack *SlackMeta) (*DiscordPa AvatarURL: slack.IconURL, Embeds: []*DiscordEmbedObject{{ Description: content, + URL: setting.AppUrl + p.Sender.UserName, Color: int(color), Author: &DiscordEmbedAuthorObject{ Name: p.Sender.UserName, @@ -113,7 +120,7 @@ func getDiscordPushPayload(p *api.PushPayload, slack *SlackMeta) (*DiscordPayloa // for each commit, generate attachment text for i, commit := range p.Commits { - content += fmt.Sprintf("%s %s - %s", DiscordSHALinkFormatter(commit.URL, commit.ID[:7]), SlackShortTextFormatter(commit.Message), commit.Author.Name) + content += fmt.Sprintf("%s %s - %s", DiscordSHALinkFormatter(commit.URL, commit.ID[:7]), DiscordTextFormatter(commit.Message), commit.Author.Name) // add linebreak to each commit but the last if i < len(p.Commits)-1 { content += "\n" @@ -126,6 +133,7 @@ func getDiscordPushPayload(p *api.PushPayload, slack *SlackMeta) (*DiscordPayloa AvatarURL: slack.IconURL, Embeds: []*DiscordEmbedObject{{ Description: content, + URL: setting.AppUrl + p.Sender.UserName, Color: int(color), Author: &DiscordEmbedAuthorObject{ Name: p.Sender.UserName, |