diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/modules.c | 21 | ||||
-rw-r--r-- | src/modules/cs_appendtopic.c | 12 | ||||
-rw-r--r-- | src/modules/cs_enforce.c | 28 | ||||
-rw-r--r-- | src/modules/cs_tban.c | 8 | ||||
-rw-r--r-- | src/modules/hs_request.c | 50 | ||||
-rw-r--r-- | src/modules/ns_maxemail.c | 8 | ||||
-rw-r--r-- | src/modules/os_info.c | 32 |
7 files changed, 84 insertions, 75 deletions
diff --git a/src/modules.c b/src/modules.c index 52b163619..085f77d91 100644 --- a/src/modules.c +++ b/src/modules.c @@ -1209,14 +1209,7 @@ void updateProtectDetails(const char *level_info_protect_word, } } -/** - * Send a notice to the user in the correct language, or english. - * @param source Who sends the notice - * @param u The user to send the message to - * @param number The message number - * @param ... The argument list - **/ -void moduleNoticeLang(char *source, User * u, int number, ...) +void Module::NoticeLang(char *source, User * u, int number, ...) { va_list va; char buffer[4096], outbuf[4096]; @@ -1224,23 +1217,19 @@ void moduleNoticeLang(char *source, User * u, int number, ...) int lang = NSDefLanguage; char *s, *t, *buf; - if ((mod_current_module_name) && (!mod_current_module || mod_current_module_name != mod_current_module->name)) { - mod_current_module = findModule(mod_current_module_name); - } - /* Find the users lang, and use it if we can */ if (u && u->na && u->na->nc) { lang = u->na->nc->language; } /* If the users lang isnt supported, drop back to English */ - if (mod_current_module->lang[lang].argc == 0) { + if (this->lang[lang].argc == 0) { lang = LANG_EN_US; } /* If the requested lang string exists for the language */ - if (mod_current_module->lang[lang].argc > number) { - fmt = mod_current_module->lang[lang].argv[number]; + if (this->lang[lang].argc > number) { + fmt = this->lang[lang].argv[number]; buf = sstrdup(fmt); va_start(va, number); @@ -1257,7 +1246,7 @@ void moduleNoticeLang(char *source, User * u, int number, ...) } delete [] buf; } else { - alog("%s: INVALID language string call, language: [%d], String [%d]", mod_current_module->name.c_str(), lang, number); + alog("%s: INVALID language string call, language: [%d], String [%d]", this->name.c_str(), lang, number); } } diff --git a/src/modules/cs_appendtopic.c b/src/modules/cs_appendtopic.c index 01b7dc544..cd8255500 100644 --- a/src/modules/cs_appendtopic.c +++ b/src/modules/cs_appendtopic.c @@ -53,6 +53,8 @@ void my_cs_help(User * u); int my_cs_help_appendtopic(User * u); void my_add_languages(void); +static Module *me; + class CSAppendTopic : public Module { public: @@ -60,6 +62,8 @@ class CSAppendTopic : public Module { Command *c; + me = this; + this->SetAuthor(AUTHOR); this->SetVersion(VERSION); this->SetType(SUPPORTED); @@ -153,14 +157,14 @@ class CSAppendTopic : public Module void my_cs_help(User * u) { - moduleNoticeLang(s_ChanServ, u, LNG_CHAN_HELP); + me->NoticeLang(s_ChanServ, u, LNG_CHAN_HELP); } int my_cs_help_appendtopic(User * u) { - moduleNoticeLang(s_ChanServ, u, LNG_APPENDTOPIC_SYNTAX); + me->NoticeLang(s_ChanServ, u, LNG_APPENDTOPIC_SYNTAX); ircdproto->SendMessage(findbot(s_ChanServ), u->nick, " "); - moduleNoticeLang(s_ChanServ, u, LNG_CHAN_HELP_APPENDTOPIC); + me->NoticeLang(s_ChanServ, u, LNG_CHAN_HELP_APPENDTOPIC); return MOD_STOP; } @@ -178,7 +182,7 @@ int my_cs_appendtopic(User * u) newtopic = myStrGetTokenRemainder(cur_buffer, ' ', 1); if (!chan || !newtopic) { - moduleNoticeLang(s_ChanServ, u, LNG_APPENDTOPIC_SYNTAX); + me->NoticeLang(s_ChanServ, u, LNG_APPENDTOPIC_SYNTAX); } else if (!(c = findchan(chan))) { notice_lang(s_ChanServ, u, CHAN_X_NOT_IN_USE, chan); } else if (!(ci = c->ci)) { diff --git a/src/modules/cs_enforce.c b/src/modules/cs_enforce.c index 9b36e966e..6fa941df4 100644 --- a/src/modules/cs_enforce.c +++ b/src/modules/cs_enforce.c @@ -32,6 +32,8 @@ void my_add_languages(void); #define LNG_CHAN_HELP_ENFORCE_R_DISABLED 4 #define LNG_CHAN_RESPONSE 5 +static Module *me; + class CSEnforce : public Module { public: @@ -39,6 +41,8 @@ class CSEnforce : public Module { Command *c; + me = this; + this->SetAuthor(AUTHOR); this->SetVersion(VERSION); this->SetType(SUPPORTED); @@ -409,7 +413,7 @@ int my_cs_enforce(User * u) chan = myStrGetToken(cur_buffer, ' ', 0); if (!chan) { - moduleNoticeLang(s_ChanServ, u, LNG_ENFORCE_SYNTAX); + me->NoticeLang(s_ChanServ, u, LNG_ENFORCE_SYNTAX); } else if (!(c = findchan(chan))) { notice_lang(s_ChanServ, u, CHAN_X_NOT_IN_USE, chan); } else if (!(ci = c->ci)) { @@ -422,21 +426,21 @@ int my_cs_enforce(User * u) what = myStrGetToken(cur_buffer, ' ', 1); if (!what || (stricmp(what, "SET") == 0)) { do_enforce_set(c); - moduleNoticeLang(s_ChanServ,u,LNG_CHAN_RESPONSE,what); + me->NoticeLang(s_ChanServ,u,LNG_CHAN_RESPONSE,what); } else if (stricmp(what, "MODES") == 0) { do_enforce_modes(c); - moduleNoticeLang(s_ChanServ,u,LNG_CHAN_RESPONSE,what); + me->NoticeLang(s_ChanServ,u,LNG_CHAN_RESPONSE,what); } else if (stricmp(what, "SECUREOPS") == 0) { do_enforce_secureops(c); - moduleNoticeLang(s_ChanServ,u,LNG_CHAN_RESPONSE,what); + me->NoticeLang(s_ChanServ,u,LNG_CHAN_RESPONSE,what); } else if (stricmp(what, "RESTRICTED") == 0) { do_enforce_restricted(c); - moduleNoticeLang(s_ChanServ,u,LNG_CHAN_RESPONSE,what); + me->NoticeLang(s_ChanServ,u,LNG_CHAN_RESPONSE,what); } else if (stricmp(what, "+R") == 0) { do_enforce_cmode_R(c); - moduleNoticeLang(s_ChanServ,u,LNG_CHAN_RESPONSE,what); + me->NoticeLang(s_ChanServ,u,LNG_CHAN_RESPONSE,what); } else { - moduleNoticeLang(s_ChanServ, u, LNG_ENFORCE_SYNTAX); + me->NoticeLang(s_ChanServ, u, LNG_ENFORCE_SYNTAX); } } @@ -449,19 +453,19 @@ int my_cs_enforce(User * u) /* Language and response stuff */ void my_cs_help(User * u) { - moduleNoticeLang(s_ChanServ, u, LNG_CHAN_HELP); + me->NoticeLang(s_ChanServ, u, LNG_CHAN_HELP); } int my_cs_help_enforce(User * u) { - moduleNoticeLang(s_ChanServ, u, LNG_ENFORCE_SYNTAX); + me->NoticeLang(s_ChanServ, u, LNG_ENFORCE_SYNTAX); ircdproto->SendMessage(findbot(s_ChanServ), u->nick, " "); - moduleNoticeLang(s_ChanServ, u, LNG_CHAN_HELP_ENFORCE); + me->NoticeLang(s_ChanServ, u, LNG_CHAN_HELP_ENFORCE); ircdproto->SendMessage(findbot(s_ChanServ), u->nick, " "); if (cbmodes['R'].flag != 0) - moduleNoticeLang(s_ChanServ, u, LNG_CHAN_HELP_ENFORCE_R_ENABLED); + me->NoticeLang(s_ChanServ, u, LNG_CHAN_HELP_ENFORCE_R_ENABLED); else - moduleNoticeLang(s_ChanServ, u, LNG_CHAN_HELP_ENFORCE_R_DISABLED); + me->NoticeLang(s_ChanServ, u, LNG_CHAN_HELP_ENFORCE_R_DISABLED); return MOD_STOP; } diff --git a/src/modules/cs_tban.c b/src/modules/cs_tban.c index d402b952e..864f9de40 100644 --- a/src/modules/cs_tban.c +++ b/src/modules/cs_tban.c @@ -122,25 +122,25 @@ class CSTBan : public Module void myHelp(User * u) { - moduleNoticeLang(s_ChanServ, u, TBAN_HELP); + me->NoticeLang(s_ChanServ, u, TBAN_HELP); } void myFullHelpSyntax(User * u) { - moduleNoticeLang(s_ChanServ, u, TBAN_SYNTAX); + me->NoticeLang(s_ChanServ, u, TBAN_SYNTAX); } int myFullHelp(User * u) { myFullHelpSyntax(u); ircdproto->SendMessage(findbot(s_ChanServ), u->nick, " "); - moduleNoticeLang(s_ChanServ, u, TBAN_HELP_DETAIL); + me->NoticeLang(s_ChanServ, u, TBAN_HELP_DETAIL); return MOD_CONT; } void mySendResponse(User * u, char *channel, char *mask, char *time) { - moduleNoticeLang(s_ChanServ, u, TBAN_RESPONSE, mask, channel, time); + me->NoticeLang(s_ChanServ, u, TBAN_RESPONSE, mask, channel, time); } int do_tban(User * u) diff --git a/src/modules/hs_request.c b/src/modules/hs_request.c index 0a88b62b7..f3046eb81 100644 --- a/src/modules/hs_request.c +++ b/src/modules/hs_request.c @@ -83,6 +83,8 @@ void my_add_languages(void); HostCore *hs_request_head; +static Module *me; + class HSRequest : public Module { public: @@ -91,6 +93,8 @@ class HSRequest : public Module Command *c; EvtHook *hook; + me = this; + c = createCommand("request", hs_do_request, nick_identified, -1, -1, -1, -1, -1); moduleAddHelp(c, hs_help_request); this->AddCommand(HOSTSERV, c, MOD_HEAD); @@ -417,7 +421,7 @@ int hs_do_request(User * u) if (!nick || !rawhostmask) { if (rawhostmask) delete [] rawhostmask; - moduleNoticeLang(s_HostServ, u, LNG_REQUEST_SYNTAX); + me->NoticeLang(s_HostServ, u, LNG_REQUEST_SYNTAX); return MOD_CONT; } @@ -425,7 +429,7 @@ int hs_do_request(User * u) if (vIdent) { rawhostmask = myStrGetTokenRemainder(rawhostmask, '@', 1); /* get the remaining string */ if (!rawhostmask) { - moduleNoticeLang(s_HostServ, u, LNG_REQUEST_SYNTAX); + me->NoticeLang(s_HostServ, u, LNG_REQUEST_SYNTAX); delete [] vIdent; return MOD_CONT; } @@ -474,7 +478,7 @@ int hs_do_request(User * u) if (HSRequestMemoOper || HSRequestMemoSetters) { if (MSSendDelay > 0 && u && u->lastmemosend + MSSendDelay > now) { - moduleNoticeLang(s_HostServ, u, LNG_REQUEST_WAIT, + me->NoticeLang(s_HostServ, u, LNG_REQUEST_WAIT, MSSendDelay); u->lastmemosend = now; if (vIdent) @@ -485,7 +489,7 @@ int hs_do_request(User * u) } my_add_host_request(nick, vIdent, hostmask, u->nick, tmp_time); - moduleNoticeLang(s_HostServ, u, LNG_REQUESTED); + me->NoticeLang(s_HostServ, u, LNG_REQUESTED); req_send_memos(u, hostmask); alog("New vHost Requested by %s", nick); } else { @@ -603,7 +607,7 @@ int hs_do_reject(User * u) reason = myStrGetTokenRemainder(cur_buffer, ' ', 1); if (!nick) { - moduleNoticeLang(s_HostServ, u, LNG_REJECT_SYNTAX); + me->NoticeLang(s_HostServ, u, LNG_REJECT_SYNTAX); if (reason) delete [] reason; return MOD_CONT; @@ -625,11 +629,11 @@ int hs_do_reject(User * u) } hs_request_head = deleteHostCore(hs_request_head, tmp); - moduleNoticeLang(s_HostServ, u, LNG_REJECTED, nick); + me->NoticeLang(s_HostServ, u, LNG_REJECTED, nick); alog("Host Request for %s rejected by %s (%s)", nick, u->nick, reason ? reason : ""); } else { - moduleNoticeLang(s_HostServ, u, LNG_NO_REQUEST, nick); + me->NoticeLang(s_HostServ, u, LNG_NO_REQUEST, nick); } delete [] nick; @@ -651,7 +655,7 @@ int hs_do_activate(User * u) nick = myStrGetToken(cur_buffer, ' ', 0); if (!nick) { - moduleNoticeLang(s_HostServ, u, LNG_ACTIVATE_SYNTAX); + me->NoticeLang(s_HostServ, u, LNG_ACTIVATE_SYNTAX); return MOD_CONT; } @@ -670,14 +674,14 @@ int hs_do_activate(User * u) my_memo_lang(u, hc->nick, 2, LNG_ACTIVATE_MEMO); hs_request_head = deleteHostCore(hs_request_head, tmp); - moduleNoticeLang(s_HostServ, u, LNG_ACTIVATED, nick); + me->NoticeLang(s_HostServ, u, LNG_ACTIVATED, nick); alog("Host Request for %s activated by %s", nick, u->nick); } else { - moduleNoticeLang(s_HostServ, u, LNG_NO_REQUEST, nick); + me->NoticeLang(s_HostServ, u, LNG_NO_REQUEST, nick); } } else { /* Should be "User Not Found" instead */ - moduleNoticeLang(s_HostServ, u, LNG_ACTIVATE_SYNTAX); + me->NoticeLang(s_HostServ, u, LNG_ACTIVATE_SYNTAX); } delete [] nick; @@ -775,9 +779,9 @@ void show_list(User * u) int hs_help_request(User * u) { - moduleNoticeLang(s_HostServ, u, LNG_REQUEST_SYNTAX); + me->NoticeLang(s_HostServ, u, LNG_REQUEST_SYNTAX); ircdproto->SendMessage(findbot(s_HostServ), u->nick, " "); - moduleNoticeLang(s_HostServ, u, LNG_HELP_REQUEST); + me->NoticeLang(s_HostServ, u, LNG_HELP_REQUEST); return MOD_CONT; } @@ -785,11 +789,11 @@ int hs_help_request(User * u) int hs_help_activate(User * u) { if (is_host_setter(u)) { - moduleNoticeLang(s_HostServ, u, LNG_ACTIVATE_SYNTAX); + me->NoticeLang(s_HostServ, u, LNG_ACTIVATE_SYNTAX); ircdproto->SendMessage(findbot(s_HostServ), u->nick, " "); - moduleNoticeLang(s_HostServ, u, LNG_HELP_ACTIVATE); + me->NoticeLang(s_HostServ, u, LNG_HELP_ACTIVATE); if (HSRequestMemoUser) - moduleNoticeLang(s_HostServ, u, LNG_HELP_ACTIVATE_MEMO); + me->NoticeLang(s_HostServ, u, LNG_HELP_ACTIVATE_MEMO); } else { notice_lang(s_HostServ, u, NO_HELP_AVAILABLE, "ACTIVATE"); } @@ -800,11 +804,11 @@ int hs_help_activate(User * u) int hs_help_reject(User * u) { if (is_host_setter(u)) { - moduleNoticeLang(s_HostServ, u, LNG_REJECT_SYNTAX); + me->NoticeLang(s_HostServ, u, LNG_REJECT_SYNTAX); ircdproto->SendMessage(findbot(s_HostServ), u->nick, " "); - moduleNoticeLang(s_HostServ, u, LNG_HELP_REJECT); + me->NoticeLang(s_HostServ, u, LNG_HELP_REJECT); if (HSRequestMemoUser) - moduleNoticeLang(s_HostServ, u, LNG_HELP_REJECT_MEMO); + me->NoticeLang(s_HostServ, u, LNG_HELP_REJECT_MEMO); } else { notice_lang(s_HostServ, u, NO_HELP_AVAILABLE, "REJECT"); } @@ -815,9 +819,9 @@ int hs_help_reject(User * u) int hs_help_waiting(User * u) { if (is_host_setter(u)) { - moduleNoticeLang(s_HostServ, u, LNG_WAITING_SYNTAX); + me->NoticeLang(s_HostServ, u, LNG_WAITING_SYNTAX); ircdproto->SendMessage(findbot(s_HostServ), u->nick, " "); - moduleNoticeLang(s_HostServ, u, LNG_HELP_WAITING); + me->NoticeLang(s_HostServ, u, LNG_HELP_WAITING); } else { notice_lang(s_HostServ, u, NO_HELP_AVAILABLE, "WAITING"); } @@ -827,9 +831,9 @@ int hs_help_waiting(User * u) void hs_help(User * u) { - moduleNoticeLang(s_HostServ, u, LNG_HELP); + me->NoticeLang(s_HostServ, u, LNG_HELP); if (is_host_setter(u)) - moduleNoticeLang(s_HostServ, u, LNG_HELP_SETTER); + me->NoticeLang(s_HostServ, u, LNG_HELP_SETTER); } void hsreq_load_db(void) { diff --git a/src/modules/ns_maxemail.c b/src/modules/ns_maxemail.c index 54a1494fa..a3fef5ba5 100644 --- a/src/modules/ns_maxemail.c +++ b/src/modules/ns_maxemail.c @@ -30,6 +30,8 @@ int NSEmailMax = 0; #define LNG_NSEMAILMAX_REACHED 0 #define LNG_NSEMAILMAX_REACHED_ONE 1 +static Module *me; + class NSMaxEmail : public Module { public: @@ -39,6 +41,8 @@ class NSMaxEmail : public Module EvtHook *evt; int status; + me = this; + this->SetAuthor(AUTHOR); this->SetVersion(VERSION); this->SetType(SUPPORTED); @@ -134,9 +138,9 @@ int check_email_limit_reached(char *email, User * u) return MOD_CONT; if (NSEmailMax == 1) - moduleNoticeLang(s_NickServ, u, LNG_NSEMAILMAX_REACHED_ONE); + me->NoticeLang(s_NickServ, u, LNG_NSEMAILMAX_REACHED_ONE); else - moduleNoticeLang(s_NickServ, u, LNG_NSEMAILMAX_REACHED, + me->NoticeLang(s_NickServ, u, LNG_NSEMAILMAX_REACHED, NSEmailMax); return MOD_STOP; diff --git a/src/modules/os_info.c b/src/modules/os_info.c index dbf72731c..b99c4a96a 100644 --- a/src/modules/os_info.c +++ b/src/modules/os_info.c @@ -59,6 +59,8 @@ int mBackupData(int argc, char **argv); int mLoadConfig(); int mEventReload(int argc, char **argv); +static Module *me; + /*************************************************************************/ class OSInfo : public Module @@ -71,6 +73,8 @@ class OSInfo : public Module int status; + me = this; + this->SetAuthor(AUTHOR); this->SetVersion(VERSION); this->SetType(SUPPORTED); @@ -383,7 +387,7 @@ int myAddNickInfo(User * u) if ((na = findnick(nick))) { /* Add the module data to the user */ na->nc->Extend("os_info", sstrdup(info)); - moduleNoticeLang(s_NickServ, u, OINFO_ADD_SUCCESS, nick); + me->NoticeLang(s_NickServ, u, OINFO_ADD_SUCCESS, nick); /* NickCore not found! */ } else { notice_lang(s_NickServ, u, NICK_X_NOT_REGISTERED, @@ -402,7 +406,7 @@ int myAddNickInfo(User * u) na->nc->Shrink("os_info"); } - moduleNoticeLang(s_NickServ, u, OINFO_DEL_SUCCESS, nick); + me->NoticeLang(s_NickServ, u, OINFO_DEL_SUCCESS, nick); /* NickCore not found! */ } else { notice_lang(s_NickServ, u, NICK_X_NOT_REGISTERED, @@ -410,17 +414,17 @@ int myAddNickInfo(User * u) } /* another syntax error! */ } else { - moduleNoticeLang(s_NickServ, u, OINFO_SYNTAX); + me->NoticeLang(s_NickServ, u, OINFO_SYNTAX); } delete [] cmd; delete [] nick; /* Syntax error */ } else if (cmd) { - moduleNoticeLang(s_NickServ, u, OINFO_SYNTAX); + me->NoticeLang(s_NickServ, u, OINFO_SYNTAX); delete [] cmd; /* Syntax error */ } else { - moduleNoticeLang(s_NickServ, u, OINFO_SYNTAX); + me->NoticeLang(s_NickServ, u, OINFO_SYNTAX); } } return MOD_CONT; @@ -456,7 +460,7 @@ int myAddChanInfo(User * u) if ((ci = cs_findchan(chan))) { /* Add the module data to the channel */ ci->Extend("os_info", sstrdup(info)); - moduleNoticeLang(s_ChanServ, u, OCINFO_ADD_SUCCESS, chan); + me->NoticeLang(s_ChanServ, u, OCINFO_ADD_SUCCESS, chan); /* ChanInfo */ } else { notice_lang(s_ChanServ, u, CHAN_X_NOT_REGISTERED, @@ -473,7 +477,7 @@ int myAddChanInfo(User * u) delete [] c; ci->Shrink("os_info"); } - moduleNoticeLang(s_ChanServ, u, OCINFO_DEL_SUCCESS, chan); + me->NoticeLang(s_ChanServ, u, OCINFO_DEL_SUCCESS, chan); /* ChanInfo */ } else { notice_lang(s_ChanServ, u, CHAN_X_NOT_REGISTERED, @@ -481,17 +485,17 @@ int myAddChanInfo(User * u) } /* another syntax error! */ } else { - moduleNoticeLang(s_ChanServ, u, OCINFO_SYNTAX); + me->NoticeLang(s_ChanServ, u, OCINFO_SYNTAX); } delete [] cmd; delete [] chan; /* Syntax error */ } else if (cmd) { - moduleNoticeLang(s_ChanServ, u, OCINFO_SYNTAX); + me->NoticeLang(s_ChanServ, u, OCINFO_SYNTAX); delete [] cmd; /* Syntax error */ } else { - moduleNoticeLang(s_ChanServ, u, OCINFO_SYNTAX); + me->NoticeLang(s_ChanServ, u, OCINFO_SYNTAX); } } return MOD_CONT; @@ -735,7 +739,7 @@ int mEventReload(int argc, char **argv) int mNickHelp(User * u) { if (is_oper(u)) { - moduleNoticeLang(s_NickServ, u, OINFO_HELP); + me->NoticeLang(s_NickServ, u, OINFO_HELP); } else { notice_lang(s_NickServ, u, NO_HELP_AVAILABLE, "OINFO"); } @@ -745,7 +749,7 @@ int mNickHelp(User * u) int mChanHelp(User * u) { if (is_oper(u)) { - moduleNoticeLang(s_ChanServ, u, OCINFO_HELP); + me->NoticeLang(s_ChanServ, u, OCINFO_HELP); } else { notice_lang(s_ChanServ, u, NO_HELP_AVAILABLE, "OINFO"); } @@ -756,7 +760,7 @@ int mChanHelp(User * u) void mMainNickHelp(User * u) { if (is_oper(u)) { - moduleNoticeLang(s_NickServ, u, OINFO_HELP_CMD); + me->NoticeLang(s_NickServ, u, OINFO_HELP_CMD); } } @@ -764,7 +768,7 @@ void mMainNickHelp(User * u) void mMainChanHelp(User * u) { if (is_oper(u)) { - moduleNoticeLang(s_ChanServ, u, OCINFO_HELP_CMD); + me->NoticeLang(s_ChanServ, u, OCINFO_HELP_CMD); } } |