|
|
|
@ -192,10 +192,8 @@ func herdofemus(noise string) []Emu {
|
|
|
|
|
|
|
|
|
|
var re_memes = regexp.MustCompile("meme: ?([[:alnum:]_.-]+)")
|
|
|
|
|
|
|
|
|
|
func memetics(noise string) []*Donk {
|
|
|
|
|
var donks []*Donk
|
|
|
|
|
m := re_memes.FindAllString(noise, -1)
|
|
|
|
|
for _, x := range m {
|
|
|
|
|
func memetize(honk *Honk) {
|
|
|
|
|
repl := func(x string) string {
|
|
|
|
|
name := x[5:]
|
|
|
|
|
if name[0] == ' ' {
|
|
|
|
|
name = name[1:]
|
|
|
|
@ -203,7 +201,7 @@ func memetics(noise string) []*Donk {
|
|
|
|
|
fd, err := os.Open("memes/" + name)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Printf("no meme for %s", name)
|
|
|
|
|
continue
|
|
|
|
|
return x
|
|
|
|
|
}
|
|
|
|
|
var peek [512]byte
|
|
|
|
|
n, _ := fd.Read(peek[:])
|
|
|
|
@ -214,7 +212,7 @@ func memetics(noise string) []*Donk {
|
|
|
|
|
res, err := stmtSaveFile.Exec("", name, url, ct, 0, "")
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Printf("error saving meme: %s", err)
|
|
|
|
|
continue
|
|
|
|
|
return x
|
|
|
|
|
}
|
|
|
|
|
var d Donk
|
|
|
|
|
d.FileID, _ = res.LastInsertId()
|
|
|
|
@ -223,9 +221,11 @@ func memetics(noise string) []*Donk {
|
|
|
|
|
d.Media = ct
|
|
|
|
|
d.URL = url
|
|
|
|
|
d.Local = false
|
|
|
|
|
donks = append(donks, &d)
|
|
|
|
|
honk.Donks = append(honk.Donks, &d)
|
|
|
|
|
log.Printf("replace with -")
|
|
|
|
|
return ""
|
|
|
|
|
}
|
|
|
|
|
return donks
|
|
|
|
|
honk.Noise = re_memes.ReplaceAllStringFunc(honk.Noise, repl)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var re_bolder = regexp.MustCompile(`(^|\W)\*\*([\w\s,.!?'-]+)\*\*($|\W)`)
|
|
|
|
|