40 lines
1.0 KiB
Go
40 lines
1.0 KiB
Go
package main
|
|
|
|
import (
|
|
"regexp"
|
|
"strings"
|
|
|
|
"github.com/icedream/go-footballdata"
|
|
)
|
|
|
|
const (
|
|
runeIrcBold = '\x02'
|
|
runeIrcColor = '\x03'
|
|
runeIrcReset = '\x0f'
|
|
runeIrcReverse = '\x16'
|
|
runeIrcItalic = '\x1d'
|
|
runeIrcUnderline = '\x1f'
|
|
)
|
|
|
|
var (
|
|
rxIrcColor = regexp.MustCompile(string(runeIrcColor) + "([0-9]*(,[0-9]*)?)")
|
|
)
|
|
|
|
func stripIrcFormatting(text string) string {
|
|
text = strings.Replace(text, string(runeIrcBold), "", -1)
|
|
text = strings.Replace(text, string(runeIrcReset), "", -1)
|
|
text = strings.Replace(text, string(runeIrcReverse), "", -1)
|
|
text = strings.Replace(text, string(runeIrcItalic), "", -1)
|
|
text = strings.Replace(text, string(runeIrcUnderline), "", -1)
|
|
text = rxIrcColor.ReplaceAllLiteralString(text, "")
|
|
return text
|
|
}
|
|
|
|
func fixturesMap(fixtures []footballdata.Fixture) map[versus]footballdata.Fixture {
|
|
retval := make(map[versus]footballdata.Fixture)
|
|
for _, fixture := range fixtures {
|
|
retval[versus{fixture.HomeTeamName, fixture.AwayTeamName}] = fixture
|
|
}
|
|
return retval
|
|
}
|