X-Git-Url: http://www.git.cypherpunks.ru/?a=blobdiff_plain;f=room.go;h=ccfdb077b24b638d3a83adf1bbaa692fc4ab49a7;hb=4f5fa5132780b50c7f2b51329b2a68d3cbbff939;hp=3f8901caf894732e369863b8c514f6bfe62e84be;hpb=cfeaaad88f71bf1b0846251b7f448bf41bde26d9;p=goircd.git diff --git a/room.go b/room.go index 3f8901c..ccfdb07 100644 --- a/room.go +++ b/room.go @@ -46,6 +46,10 @@ type Room struct { stateSink chan<- StateEvent } +func (r Room) String() string { + return r.name +} + func NewRoom(hostname, name string, logSink chan<- LogEvent, stateSink chan<- StateEvent) *Room { room := Room{name: name} room.members = make(map[*Client]bool) @@ -136,6 +140,10 @@ func (room *Room) Processor(events <-chan ClientEvent) { client.Msg(fmt.Sprintf("324 %s %s %s", client.nickname, room.name, mode)) continue } + if strings.HasPrefix(event.text, "b") { + client.ReplyNicknamed("368", room.name, "End of channel ban list") + continue + } if strings.HasPrefix(event.text, "-k") || strings.HasPrefix(event.text, "+k") { if _, subscribed := room.members[client]; !subscribed { client.ReplyParts("442", room.name, "You are not on that channel")