mirror of
https://github.com/ergochat/ergo.git
synced 2024-11-10 22:19:31 +01:00
Split NS/CS commands into separate functions
This commit is contained in:
parent
2ecec25d28
commit
3ef4c5f799
@ -45,12 +45,19 @@ func (server *Server) chanservPrivmsgHandler(client *Client, message string) {
|
||||
return
|
||||
}
|
||||
|
||||
server.chanservRegisterHandler(client, params[1])
|
||||
} else {
|
||||
client.ChanServNotice(client.t("Sorry, I don't know that command"))
|
||||
}
|
||||
}
|
||||
|
||||
// chanservRegisterHandler handles the ChanServ REGISTER subcommand.
|
||||
func (server *Server) chanservRegisterHandler(client *Client, channelName string) {
|
||||
if !server.channelRegistrationEnabled {
|
||||
client.ChanServNotice(client.t("Channel registration is not enabled"))
|
||||
return
|
||||
}
|
||||
|
||||
channelName := params[1]
|
||||
channelKey, err := CasefoldChannel(channelName)
|
||||
if err != nil {
|
||||
client.ChanServNotice(client.t("Channel name is not valid"))
|
||||
@ -93,7 +100,4 @@ func (server *Server) chanservPrivmsgHandler(client *Client, message string) {
|
||||
member.Send(nil, fmt.Sprintf("ChanServ!services@%s", client.server.name), "MODE", args...)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
client.ChanServNotice(client.t("Sorry, I don't know that command"))
|
||||
}
|
||||
}
|
||||
|
@ -62,6 +62,18 @@ func (server *Server) nickservPrivmsgHandler(client *Client, message string) {
|
||||
return
|
||||
}
|
||||
|
||||
server.nickservRegisterHandler(client, username, passphrase)
|
||||
} else if command == "identify" {
|
||||
// get params
|
||||
username, passphrase := extractParam(params)
|
||||
|
||||
server.nickservIdentifyHandler(client, username, passphrase)
|
||||
} else {
|
||||
client.Notice(client.t("Command not recognised. To see the available commands, run /NS HELP"))
|
||||
}
|
||||
}
|
||||
|
||||
func (server *Server) nickservRegisterHandler(client *Client, username, passphrase string) {
|
||||
certfp := client.certfp
|
||||
if passphrase == "" && certfp == "" {
|
||||
client.Notice(client.t("You need to either supply a passphrase or be connected via TLS with a client cert"))
|
||||
@ -195,8 +207,9 @@ func (server *Server) nickservPrivmsgHandler(client *Client, message string) {
|
||||
removeFailedAccRegisterData(server.store, casefoldedAccount)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
} else if command == "identify" {
|
||||
func (server *Server) nickservIdentifyHandler(client *Client, username, passphrase string) {
|
||||
// fail out if we need to
|
||||
if !server.accountAuthenticationEnabled {
|
||||
client.Notice(client.t("Login has been disabled"))
|
||||
@ -204,7 +217,6 @@ func (server *Server) nickservPrivmsgHandler(client *Client, message string) {
|
||||
}
|
||||
|
||||
// try passphrase
|
||||
username, passphrase := extractParam(params)
|
||||
if username != "" && passphrase != "" {
|
||||
// keep it the same as in the ACC CREATE stage
|
||||
accountKey, err := CasefoldName(username)
|
||||
@ -300,7 +312,4 @@ func (server *Server) nickservPrivmsgHandler(client *Client, message string) {
|
||||
}
|
||||
|
||||
client.Notice(client.t("Could not login with your TLS certificate or supplied username/password"))
|
||||
} else {
|
||||
client.Notice(client.t("Command not recognised. To see the available commands, run /NS HELP"))
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user