|
@@ -102,21 +102,26 @@ func sendSuccessfulAccountAuth(service *ircService, client *Client, rb *Response
|
102
|
102
|
}
|
103
|
103
|
}
|
104
|
104
|
|
105
|
|
- // dispatch account-notify
|
106
|
|
- for friend := range client.Friends(caps.AccountNotify) {
|
107
|
|
- if friend != rb.session {
|
108
|
|
- friend.Send(nil, details.nickMask, "ACCOUNT", details.accountName)
|
|
105
|
+ if client.Registered() {
|
|
106
|
+ // dispatch account-notify
|
|
107
|
+ for friend := range client.Friends(caps.AccountNotify) {
|
|
108
|
+ if friend != rb.session {
|
|
109
|
+ friend.Send(nil, details.nickMask, "ACCOUNT", details.accountName)
|
|
110
|
+ }
|
109
|
111
|
}
|
110
|
|
- }
|
111
|
|
- if rb.session.capabilities.Has(caps.AccountNotify) {
|
112
|
|
- rb.Add(nil, details.nickMask, "ACCOUNT", details.accountName)
|
|
112
|
+ if rb.session.capabilities.Has(caps.AccountNotify) {
|
|
113
|
+ rb.Add(nil, details.nickMask, "ACCOUNT", details.accountName)
|
|
114
|
+ }
|
|
115
|
+ client.server.sendLoginSnomask(details.nickMask, details.accountName)
|
113
|
116
|
}
|
114
|
117
|
|
115
|
|
- client.server.snomasks.Send(sno.LocalAccounts, fmt.Sprintf(ircfmt.Unescape("Client $c[grey][$r%s$c[grey]] logged into account $c[grey][$r%s$c[grey]]"), details.nickMask, details.accountName))
|
116
|
|
-
|
117
|
118
|
client.server.logger.Info("accounts", "client", details.nick, "logged into account", details.accountName)
|
118
|
119
|
}
|
119
|
120
|
|
|
121
|
+func (server *Server) sendLoginSnomask(nickMask, accountName string) {
|
|
122
|
+ server.snomasks.Send(sno.LocalAccounts, fmt.Sprintf(ircfmt.Unescape("Client $c[grey][$r%s$c[grey]] logged into account $c[grey][$r%s$c[grey]]"), nickMask, accountName))
|
|
123
|
+}
|
|
124
|
+
|
120
|
125
|
// AUTHENTICATE [<mechanism>|<data>|*]
|
121
|
126
|
func authenticateHandler(server *Server, client *Client, msg ircmsg.IrcMessage, rb *ResponseBuffer) bool {
|
122
|
127
|
session := rb.session
|