summaryrefslogtreecommitdiff
path: root/modules/core/ns_logout.cpp
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2010-11-24 21:40:56 -0600
committerAdam <Adam@anope.org>2010-12-12 19:36:19 -0500
commitcb6ef574e3df5cc846247450b74ca37d265f319e (patch)
tree8ce3374a537c312af63c78125bfea4622bb188f0 /modules/core/ns_logout.cpp
parent37e02a3594fdddc3d5a3df0501c528f42db6c4da (diff)
Send replies from fantasy commands back to the channel, this will be expanded on later
Diffstat (limited to 'modules/core/ns_logout.cpp')
-rw-r--r--modules/core/ns_logout.cpp18
1 files changed, 10 insertions, 8 deletions
diff --git a/modules/core/ns_logout.cpp b/modules/core/ns_logout.cpp
index 252fe1d0d..c6e04c8c8 100644
--- a/modules/core/ns_logout.cpp
+++ b/modules/core/ns_logout.cpp
@@ -20,18 +20,20 @@ class CommandNSLogout : public Command
{
}
- CommandReturn Execute(User *u, const std::vector<Anope::string> &params)
+ CommandReturn Execute(CommandSource &source, const std::vector<Anope::string> &params)
{
- Anope::string nick = !params.empty() ? params[0] : "";
- Anope::string param = params.size() > 1 ? params[1] : "";
- User *u2;
+ User *u = source.u;
+
+ const Anope::string &nick = !params.empty() ? params[0] : "";
+ const Anope::string &param = params.size() > 1 ? params[1] : "";
+ User *u2;
if (!u->Account()->IsServicesOper() && !nick.empty())
this->OnSyntaxError(u, "");
else if (!(u2 = (!nick.empty() ? finduser(nick) : u)))
- u->SendMessage(NickServ, NICK_X_NOT_IN_USE, nick.c_str());
+ source.Reply(NICK_X_NOT_IN_USE, nick.c_str());
else if (!nick.empty() && u2->Account() && !u2->Account()->IsServicesOper())
- u->SendMessage(NickServ, NICK_LOGOUT_SERVICESADMIN, nick.c_str());
+ source.Reply(NICK_LOGOUT_SERVICESADMIN, nick.c_str());
else
{
if (!nick.empty() && !param.empty() && param.equals_ci("REVALIDATE"))
@@ -42,9 +44,9 @@ class CommandNSLogout : public Command
/* Remove founder status from this user in all channels */
if (!nick.empty())
- u->SendMessage(NickServ, NICK_LOGOUT_X_SUCCEEDED, nick.c_str());
+ source.Reply(NICK_LOGOUT_X_SUCCEEDED, nick.c_str());
else
- u->SendMessage(NickServ, NICK_LOGOUT_SUCCEEDED);
+ source.Reply(NICK_LOGOUT_SUCCEEDED);
ircdproto->SendAccountLogout(u2, u2->Account());
u2->RemoveMode(NickServ, UMODE_REGISTERED);