* +------------------------------------+
*
* InspIRCd: (C) 2002-2009 InspIRCd Development Team
- * See: http://www.inspircd.org/wiki/index.php/Credits
+ * See: http://wiki.inspircd.org/Credits
*
* This program is free but copyrighted software; see
* the file COPYING for details.
class ModuleNoNickChange : public Module
{
- NoNicks* nn;
+ NoNicks nn;
public:
- ModuleNoNickChange(InspIRCd* Me) : Module(Me)
+ ModuleNoNickChange(InspIRCd* Me) : Module(Me), nn(Me)
{
-
- nn = new NoNicks(ServerInstance);
- ServerInstance->Modes->AddMode(nn);
+ ServerInstance->Modes->AddMode(&nn);
Implementation eventlist[] = { I_OnUserPreNick, I_On005Numeric };
ServerInstance->Modules->Attach(eventlist, this, 2);
}
virtual ~ModuleNoNickChange()
{
- ServerInstance->Modes->DelMode(nn);
- delete nn;
+ ServerInstance->Modes->DelMode(&nn);
}
virtual Version GetVersion()
if (CHANOPS_EXEMPT(ServerInstance, 'N') && curr->GetStatus(user) == STATUS_OP)
continue;
- if (curr->IsModeSet('N') || curr->IsExtBanned(user, 'N'))
+ if (curr->IsModeSet('N') || curr->GetExtBanStatus(user, 'N') < 0)
{
user->WriteNumeric(ERR_CANTCHANGENICK, "%s :Can't change nickname while on %s (+N is set)", user->nick.c_str(), curr->name.c_str());
return 1;