summaryrefslogtreecommitdiff
path: root/modules/commands/ns_recover.cpp
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2014-04-20 14:35:14 -0400
committerAdam <Adam@anope.org>2014-04-20 14:35:14 -0400
commit26ac315192e0d8a04d50e910697ab794eedf0cc1 (patch)
treeb9916f14fe35ce5c4de95c4194ca4ea0cb30812f /modules/commands/ns_recover.cpp
parent0b6476f06ff9ce06545c421143c7d7163c750aa5 (diff)
New event system
Diffstat (limited to 'modules/commands/ns_recover.cpp')
-rw-r--r--modules/commands/ns_recover.cpp22
1 files changed, 13 insertions, 9 deletions
diff --git a/modules/commands/ns_recover.cpp b/modules/commands/ns_recover.cpp
index c469fc17b..de83ea619 100644
--- a/modules/commands/ns_recover.cpp
+++ b/modules/commands/ns_recover.cpp
@@ -11,8 +11,7 @@
#include "module.h"
#include "modules/ns_cert.h"
-
-static ServiceReference<NickServService> nickserv("NickServService", "NickServ");
+#include "modules/nickserv.h"
typedef std::map<Anope::string, ChannelStatus> NSRecoverInfo;
@@ -40,7 +39,7 @@ class NSRecoverRequest : public IdentifyRequest
/* Nick is being held by us, release it */
if (na->HasExt("HELD"))
{
- nickserv->Release(na);
+ NickServ::service->Release(na);
source.Reply(_("Service's hold on \002%s\002 has been released."), na->nick.c_str());
}
else if (!u)
@@ -89,13 +88,13 @@ class NSRecoverRequest : public IdentifyRequest
}
u->SendMessage(source.service, _("This nickname has been recovered by %s."), source.GetNick().c_str());
- if (nickserv)
- nickserv->Collide(u, na);
+ if (NickServ::service)
+ NickServ::service->Collide(u, na);
if (IRCD->CanSVSNick)
{
/* If we can svsnick then release our hold and svsnick the user using the command */
- nickserv->Release(na);
+ NickServ::service->Release(na);
IRCD->SendForceNickChange(source.GetUser(), GetAccount(), Anope::CurTime);
}
else
@@ -170,7 +169,7 @@ class CommandNSRecover : public Command
if (ok == false && !pass.empty())
{
NSRecoverRequest *req = new NSRecoverRequest(owner, source, this, na->nick, pass);
- FOREACH_MOD(OnCheckAuthentication, (source.GetUser(), req));
+ Event::OnCheckAuthentication(&Event::CheckAuthentication::OnCheckAuthentication, source.GetUser(), req);
req->Dispatch();
}
else
@@ -199,13 +198,18 @@ class CommandNSRecover : public Command
};
class NSRecover : public Module
+ , public EventHook<Event::UserNickChange>
+ , public EventHook<Event::JoinChannel>
{
CommandNSRecover commandnsrecover;
PrimitiveExtensibleItem<NSRecoverInfo> recover;
public:
- NSRecover(const Anope::string &modname, const Anope::string &creator) : Module(modname, creator, VENDOR),
- commandnsrecover(this), recover(this, "recover")
+ NSRecover(const Anope::string &modname, const Anope::string &creator) : Module(modname, creator, VENDOR)
+ , EventHook<Event::UserNickChange>("OnUserNickChange")
+ , EventHook<Event::JoinChannel>("OnJoinChannel")
+ , commandnsrecover(this)
+ , recover(this, "recover")
{
if (Config->GetModule("nickserv")->Get<bool>("nonicknameownership"))