irc/plugins/useful/channels.go

21 lines
386 B
Go
Raw Normal View History

2024-05-14 05:51:42 +00:00
package useful
import (
"strings"
"tuxpa.in/a/irc/pkg/ircv3"
)
type Autojoin struct {
Channels []string
}
func (u *Autojoin) Middleware(next ircv3.Handler) ircv3.Handler {
2024-05-15 09:28:02 +00:00
return ircv3.HandlerFunc(func(w ircv3.MessageWriter, e *ircv3.Event) {
if e.Msg.Command == "005" {
2024-05-14 05:51:42 +00:00
w.WriteMessage(ircv3.NewMessage("JOIN", strings.Join(u.Channels, ",")))
}
2024-05-15 09:28:02 +00:00
next.Handle(w, e)
2024-05-14 05:51:42 +00:00
})
}