#include "helperfuncs.h"
// Global Vars
-/* XXX - should all this be marked static? clear the global namespace, etc. */
-ConfigReader *helpop;
-Server *Srv;
+static ConfigReader *helpop;
+static Server *Srv;
void handle_helpop(char**, int, userrec*);
bool do_helpop(char**, int, userrec*);
class cmd_helpop : public command_t
{
public:
- cmd_helpop () : command_t("HELPOP",0,0)
+ cmd_helpop () : command_t("HELPOP",0,1)
{
this->source = "m_helpop.so";
}
char *search;
std::string output = " "; // a fix bought to you by brain :p
char a[MAXBUF];
- char lower[MAXBUF];
int nlines = 0;
- if (!parameters)
+ if (!pcnt)
{
search = "start";
}
search++;
}
- /* XXX - don't we have an strtolower()? if not, might pay to add one.. that works on char *, preferably.. */
- strlcpy(lower, search, MAXBUF);
- for (unsigned int t = 0; t < strlen(lower); t++)
- lower[t] = tolower(lower[t]);
-
+ strlower(search);
for (int i = 1; output != ""; i++)
{
snprintf(a,MAXBUF,"line%d",i);
- output = helpop->ReadValue(lower, a, 0);
+ output = helpop->ReadValue(search, a, 0);
if (output != "")
{
Srv->SendTo(NULL,src,"290 "+std::string(src->nick)+" :"+output);
Srv->SendToModeMask("oh",WM_AND,line);
}
-class HelpopException
+class HelpopException : public ModuleException
{
private:
std::string err;
public:
HelpopException(std::string message) : err(message) { }
- virtual char* GetReason() { return (char*)err.c_str(); }
+ virtual const char* GetReason() { return err.c_str(); }
};
class ModuleHelpop : public Module
List[I_OnRehash] = List[I_OnExtendedMode] = List[I_OnWhois] = 1;
}
- virtual void OnRehash(std::string parameter)
+ virtual void OnRehash(const std::string ¶meter)
{
- delete conf;
+ DELETE(conf);
if (helpop)
- delete helpop;
+ DELETE(helpop);
ReadConfig();
}
virtual ~ModuleHelpop()
{
- delete conf;
- delete helpop;
+ DELETE(conf);
+ DELETE(helpop);
}
virtual Version GetVersion()