forked from External/ergo
import changes
This commit is contained in:
parent
30f47a9b22
commit
ca62b268b0
16 changed files with 272 additions and 34 deletions
|
|
@ -477,6 +477,12 @@ func (channel *Channel) Names(client *Client, rb *ResponseBuffer) {
|
|||
if respectAuditorium && memberData.modes.HighestChannelUserMode() == modes.Mode(0) {
|
||||
continue
|
||||
}
|
||||
if rb.session.capabilities.Has(caps.ExtendedNames) {
|
||||
away, _ := target.Away()
|
||||
if away {
|
||||
nick = nick + "*"
|
||||
}
|
||||
}
|
||||
tl.AddParts(memberData.modes.Prefixes(isMultiPrefix), nick)
|
||||
}
|
||||
}
|
||||
|
|
@ -795,6 +801,8 @@ func (channel *Channel) Join(client *Client, key string, isSajoin bool, rb *Resp
|
|||
}
|
||||
|
||||
client.server.logger.Debug("channels", fmt.Sprintf("%s joined channel %s", details.nick, chname))
|
||||
// I think this is assured to always be a good join point
|
||||
client.server.cefManager.CEFMessage("POLL", channel.NameCasefolded())
|
||||
|
||||
givenMode := func() (givenMode modes.Mode) {
|
||||
channel.joinPartMutex.Lock()
|
||||
|
|
@ -991,6 +999,7 @@ func (channel *Channel) playJoinForSession(session *Session) {
|
|||
channel.Names(client, sessionRb)
|
||||
}
|
||||
sessionRb.Send(false)
|
||||
client.server.cefManager.CEFMessage("POLL", channel.NameCasefolded())
|
||||
}
|
||||
|
||||
// Part parts the given client from this channel, with the given message.
|
||||
|
|
@ -1450,6 +1459,7 @@ func (channel *Channel) Quit(client *Client) {
|
|||
client.server.channels.Cleanup(channel)
|
||||
}
|
||||
client.removeChannel(channel)
|
||||
client.server.cefManager.KickBroadcast(channel.name, client.Username())
|
||||
}
|
||||
|
||||
func (channel *Channel) Kick(client *Client, target *Client, comment string, rb *ResponseBuffer, hasPrivs bool) {
|
||||
|
|
@ -1513,7 +1523,7 @@ func (channel *Channel) Purge(source string) {
|
|||
now := time.Now().UTC()
|
||||
for _, member := range members {
|
||||
tnick := member.Nick()
|
||||
msgid := utils.GenerateSecretToken()
|
||||
msgid := utils.GenerateMessageIdStr()
|
||||
for _, session := range member.Sessions() {
|
||||
session.sendFromClientInternal(false, now, msgid, source, "*", false, nil, "KICK", chname, tnick, member.t("This channel has been purged by the server administrators and cannot be used"))
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue