summaryrefslogtreecommitdiff
path: root/modules/commands/ns_suspend.cpp
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2013-08-12 15:45:50 -0400
committerAdam <Adam@anope.org>2013-08-12 15:45:50 -0400
commitde5c8c0d386375c46d812c5843a5bb5a850ee865 (patch)
treed2e7834cbe85a56505ee63d22609c79b0ac5af55 /modules/commands/ns_suspend.cpp
parent8e011bbb783df2c646f479e7b02989f9165ed7c1 (diff)
Fix some issues with suspend
Diffstat (limited to 'modules/commands/ns_suspend.cpp')
-rw-r--r--modules/commands/ns_suspend.cpp18
1 files changed, 12 insertions, 6 deletions
diff --git a/modules/commands/ns_suspend.cpp b/modules/commands/ns_suspend.cpp
index 76c195a34..9545bdc60 100644
--- a/modules/commands/ns_suspend.cpp
+++ b/modules/commands/ns_suspend.cpp
@@ -40,11 +40,11 @@ struct NSSuspendInfoImpl : NSSuspendInfo, Serializable
NickAlias *na = NickAlias::Find(snick);
if (!na)
return NULL;
- si = na->Extend<NSSuspendInfoImpl>("SUSPENDED");
+ si = na->nc->Extend<NSSuspendInfoImpl>("NS_SUSPENDED");
data["nick"] >> si->nick;
}
- data["bi"] >> si->by;
+ data["by"] >> si->by;
data["reason"] >> si->reason;
data["time"] >> si->when;
data["expires"] >> si->expires;
@@ -97,9 +97,15 @@ class CommandNSSuspend : public Command
return;
}
+ if (na->nc->HasExt("NS_SUSPENDED"))
+ {
+ source.Reply(_("\2%s\2 is already suspended."), na->nc->display.c_str());
+ return;
+ }
+
NickCore *nc = na->nc;
- NSSuspendInfo *si = nc->Extend<NSSuspendInfo>("SUSPENDED");
+ NSSuspendInfo *si = nc->Extend<NSSuspendInfo>("NS_SUSPENDED");
si->nick = nc->display;
si->by = source.GetNick();
si->reason = reason;
@@ -168,13 +174,13 @@ class CommandNSUnSuspend : public Command
return;
}
- if (!na->nc->HasExt("SUSPENDED"))
+ if (!na->nc->HasExt("NS_SUSPENDED"))
{
source.Reply(_("Nick %s is not suspended."), na->nick.c_str());
return;
}
- na->nc->Shrink<NSSuspendInfo>("SUSPENDED");
+ na->nc->Shrink<NSSuspendInfo>("NS_SUSPENDED");
Log(LOG_ADMIN, source, this) << "for " << na->nick;
source.Reply(_("Nick %s is now released."), nick.c_str());
@@ -200,7 +206,7 @@ class NSSuspend : public Module
public:
NSSuspend(const Anope::string &modname, const Anope::string &creator) : Module(modname, creator, VENDOR),
- commandnssuspend(this), commandnsunsuspend(this), suspend(this, "SUSPENDED"),
+ commandnssuspend(this), commandnsunsuspend(this), suspend(this, "NS_SUSPENDED"),
suspend_type("NSSuspendInfo", NSSuspendInfoImpl::Unserialize)
{
}