X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmodules%2Fm_opermotd.cpp;h=b4a85e8890270efb39e65c5411361a708c200b74;hb=2330fc9ddd48c939e894e7e37e9bb2e62eafc38d;hp=a2a3c0312d8428849900186c376597f2c5f7e6f7;hpb=2d821f2980825be73e3f90b47ffff365b0ec5ecb;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_opermotd.cpp b/src/modules/m_opermotd.cpp index a2a3c0312..b4a85e889 100644 --- a/src/modules/m_opermotd.cpp +++ b/src/modules/m_opermotd.cpp @@ -10,10 +10,8 @@ using namespace std; /* $ModDesc: Shows a message to opers after oper-up, adds /opermotd */ -FileReader* opermotd; -Server* Srv; - -void do_opermotd(char** parameters, int pcnt, userrec* user); +static FileReader* opermotd; +static Server* Srv; void LoadOperMOTD() { @@ -23,7 +21,7 @@ void LoadOperMOTD() filename = conf->ReadValue("opermotd","file",0); opermotd->LoadFile(filename); - delete conf; + DELETE(conf); } void ShowOperMOTD(userrec* user) @@ -45,20 +43,30 @@ void ShowOperMOTD(userrec* user) } -void do_opermotd(char** parameters, int pcnt, userrec* user) +class cmd_opermotd : public command_t { - ShowOperMOTD(user); -} + public: + cmd_opermotd () : command_t("OPERMOTD", 'o', 0) + { + this->source = "m_opermotd.so"; + } + + void Handle (const char** parameters, int pcnt, userrec* user) + { + ShowOperMOTD(user); + } +}; class ModuleOpermotd : public Module { + cmd_opermotd* mycommand; public: ModuleOpermotd(Server* Me) : Module::Module(Me) { Srv = Me; - - Srv->AddCommand("OPERMOTD",do_opermotd,'o',0,"m_opermotd.so"); + mycommand = new cmd_opermotd(); + Srv->AddCommand(mycommand); opermotd = new FileReader(); LoadOperMOTD(); } @@ -72,12 +80,17 @@ class ModuleOpermotd : public Module return Version(1,0,0,1,VF_VENDOR); } - virtual void OnOper(userrec* user, std::string opertype) + void Implements(char* List) + { + List[I_OnRehash] = List[I_OnOper] = 1; + } + + virtual void OnOper(userrec* user, const std::string &opertype) { ShowOperMOTD(user); } - virtual void OnRehash(std::string parameter) + virtual void OnRehash(const std::string ¶meter) { LoadOperMOTD(); }