/*
* InspIRCd -- Internet Relay Chat Daemon
*
- * Copyright (C) 2014 Attila Molnar <attilamolnar@hush.com>
+ * Copyright (C) 2018-2019 Sadie Powell <sadie@witchery.services>
+ * Copyright (C) 2014-2015 Attila Molnar <attilamolnar@hush.com>
*
* This file is part of InspIRCd. InspIRCd is free software: you can
* redistribute it and/or modify it under the terms of the GNU General Public
ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string& param, bool adding) CXX11_OVERRIDE;
// Does nothing by default
- void OnUnset(User* source, Channel* chan) { }
+ virtual bool IsParameterSecret() { return false; }
+ virtual void OnUnset(User* source, Channel* chan) { }
virtual ModeAction OnSet(User* source, Channel* chan, std::string& param) = 0;
virtual void GetParameter(Channel* chan, std::string& out) = 0;
};
*/
ParamMode(Module* Creator, const std::string& Name, char modeletter, ParamSpec ps = PARAM_SETONLY)
: ParamModeBase(Creator, Name, modeletter, ps)
- , ext("parammode_" + Name, Creator)
+ , ext("parammode_" + Name, ExtensionItem::EXT_CHANNEL, Creator)
{
}
void OnUnsetInternal(User* source, Channel* chan) CXX11_OVERRIDE
{
- T* mh = static_cast<T*>(this);
- mh->OnUnset(source, chan);
+ this->OnUnset(source, chan);
ext.unset(chan);
}