summaryrefslogtreecommitdiff
path: root/src/modules.c
diff options
context:
space:
mode:
authorcyberbotx <cyberbotx@5417fbe8-f217-4b02-8779-1006273d7864>2009-04-06 21:25:56 +0000
committercyberbotx <cyberbotx@5417fbe8-f217-4b02-8779-1006273d7864>2009-04-06 21:25:56 +0000
commit578da38d30893ca33cc1aa9183e4b82d67c831f3 (patch)
treecd2bada4c31d277463d44a63a8257339dbbcad26 /src/modules.c
parentfbb1ab92468cce3b4414a1232c4efc77d34e27c8 (diff)
Replace Set*Help() functions with virtual *ServHelp() functions that can be overriden in a module's Module class. Patch from Adam.
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2266 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'src/modules.c')
-rw-r--r--src/modules.c60
1 files changed, 16 insertions, 44 deletions
diff --git a/src/modules.c b/src/modules.c
index 3a850ee6a..da7d6a9ed 100644
--- a/src/modules.c
+++ b/src/modules.c
@@ -785,61 +785,33 @@ void moduleCallBackPrepForUnload(const char *mod_name)
}
}
-void Module::SetNickHelp(void (*func)(User *))
-{
- this->nickHelp = func;
-}
-
-void Module::SetChanHelp(void (*func)(User *))
-{
- this->chanHelp = func;
-}
-
-void Module::SetMemoHelp(void (*func)(User *))
-{
- this->memoHelp = func;
-}
-
-void Module::SetBotHelp(void (*func)(User *))
-{
- this->botHelp = func;
-}
-
-void Module::SetOperHelp(void (*func)(User *))
-{
- this->operHelp = func;
-}
-
-void Module::SetHostHelp(void (*func)(User *))
-{
- this->hostHelp = func;
-}
-
/**
* Display any extra module help for the given service.
* @param services which services is help being dispalyed for?
* @param u which user is requesting the help
**/
-void moduleDisplayHelp(int service, User * u)
+void moduleDisplayHelp(const char *service, User * u)
{
int idx;
ModuleHash *current = NULL;
+ if (!service)
+ return;
+
for (idx = 0; idx != MAX_CMD_HASH; idx++) {
for (current = MODULE_HASH[idx]; current; current = current->next) {
- if ((service == 1) && current->m->nickHelp) {
- current->m->nickHelp(u);
- } else if ((service == 2) && current->m->chanHelp) {
- current->m->chanHelp(u);
- } else if ((service == 3) && current->m->memoHelp) {
- current->m->memoHelp(u);
- } else if ((service == 4) && current->m->botHelp) {
- current->m->botHelp(u);
- } else if ((service == 5) && current->m->operHelp) {
- current->m->operHelp(u);
- } else if ((service == 6) && current->m->hostHelp) {
- current->m->hostHelp(u);
- }
+ if (!strcmp(s_NickServ, service))
+ current->m->NickServHelp(u);
+ else if (!strcmp(s_ChanServ, service))
+ current->m->ChanServHelp(u);
+ else if (!strcmp(s_MemoServ, service))
+ current->m->MemoServHelp(u);
+ else if (!strcmp(s_BotServ, service))
+ current->m->BotServHelp(u);
+ else if (!strcmp(s_OperServ, service))
+ current->m->OperServHelp(u);
+ else if (!strcmp(s_HostServ, service))
+ current->m->HostServHelp(u);
}
}
}