dcbot/internal/discord/discord.go

56 lines
923 B
Go

package discord
import (
"fmt"
"time"
"gitea.dwysokinski.me/twhelp/dcbot/internal/domain"
)
const (
colorGrey = 0x808080
embedDescriptionCharLimit = 4096
)
func formatTimestamp(t time.Time) string {
return t.Format(time.RFC3339)
}
func buildLink(text string, url string) string {
if url == "" {
return text
}
return fmt.Sprintf("[`%s`](%s)", text, url)
}
func buildChannelMention(id string) string {
return "<#" + id + ">"
}
func boolToEmoji(val bool) string {
if val {
return ":white_check_mark:"
}
return ":x:"
}
func buildLangMessageID(languageTag string) string {
return "lang." + languageTag
}
func buildPlayerMarkdown(p domain.NullPlayerMeta) string {
if !p.Valid {
return "-"
}
tag := p.Player.Tribe.Tribe.Tag
if tag == "" {
tag = "-"
}
return buildLink(p.Player.Name, p.Player.ProfileURL) +
" [" +
buildLink(tag, p.Player.Tribe.Tribe.ProfileURL) +
"]"
}