MCPcopy Create free account
hub / github.com/gogs/gogs / GetDiscordPayload

Function GetDiscordPayload

internal/database/webhook_discord.go:370–404  ·  view source on GitHub ↗
(p api.Payloader, event HookEventType, meta string)

Source from the content-addressed store, hash-verified

368}
369
370func GetDiscordPayload(p api.Payloader, event HookEventType, meta string) (payload *DiscordPayload, err error) {
371 slack := &SlackMeta{}
372 if err := jsoniter.Unmarshal([]byte(meta), &slack); err != nil {
373 return nil, errors.Newf("jsoniter.Unmarshal: %v", err)
374 }
375
376 switch event {
377 case HookEventTypeCreate:
378 payload = getDiscordCreatePayload(p.(*api.CreatePayload))
379 case HookEventTypeDelete:
380 payload = getDiscordDeletePayload(p.(*api.DeletePayload))
381 case HookEventTypeFork:
382 payload = getDiscordForkPayload(p.(*api.ForkPayload))
383 case HookEventTypePush:
384 payload = getDiscordPushPayload(p.(*api.PushPayload), slack)
385 case HookEventTypeIssues:
386 payload = getDiscordIssuesPayload(p.(*api.IssuesPayload), slack)
387 case HookEventTypeIssueComment:
388 payload = getDiscordIssueCommentPayload(p.(*api.IssueCommentPayload), slack)
389 case HookEventTypePullRequest:
390 payload = getDiscordPullRequestPayload(p.(*api.PullRequestPayload), slack)
391 case HookEventTypeRelease:
392 payload = getDiscordReleasePayload(p.(*api.ReleasePayload))
393 default:
394 return nil, errors.Errorf("unexpected event %q", event)
395 }
396
397 payload.Username = slack.Username
398 payload.AvatarURL = slack.IconURL
399 if len(payload.Embeds) > 0 {
400 color, _ := strconv.ParseInt(strings.TrimLeft(slack.Color, "#"), 16, 32)
401 payload.Embeds[0].Color = int(color)
402 }
403 return payload, nil
404}

Callers 1

prepareHookTasksFunction · 0.85

Calls 9

getDiscordCreatePayloadFunction · 0.85
getDiscordDeletePayloadFunction · 0.85
getDiscordForkPayloadFunction · 0.85
getDiscordPushPayloadFunction · 0.85
getDiscordIssuesPayloadFunction · 0.85
getDiscordReleasePayloadFunction · 0.85
ErrorfMethod · 0.45

Tested by

no test coverage detected