X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmodules%2Fm_randquote.cpp;h=5cd8a8572f6f82ac6d72d316f08320175773e4ca;hb=eb4229deed0281ae566ef7e55a144e5d3183a4b2;hp=01a6e3270c3b0b79dbf249abeae68a94a39e1c42;hpb=19aa5d081acc8e35fb6a49016ffebeb447f1d375;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_randquote.cpp b/src/modules/m_randquote.cpp index 01a6e3270..5cd8a8572 100644 --- a/src/modules/m_randquote.cpp +++ b/src/modules/m_randquote.cpp @@ -20,15 +20,14 @@ #include "users.h" #include "channels.h" #include "modules.h" +#include "helperfuncs.h" -Server *Srv; -FileReader *quotes; - -std::string q_file; -std::string prefix; -std::string suffix; - +Server *Srv = NULL; +FileReader *quotes = NULL; +std::string q_file = ""; +std::string prefix = ""; +std::string suffix = ""; /* $ModDesc: Provides random Quotes on Connect. */ @@ -37,13 +36,13 @@ void handle_randquote(char** parameters, int pcntl, userrec *user) std::string str; int fsize; char buf[MAXBUF]; - - fsize = quotes->FileSize(); - srand(time(NULL)); - str = quotes->GetLine(rand() % fsize); - - sprintf(buf,"NOTICE %s :%s%s%s",user->nick,prefix.c_str(),str.c_str(),suffix.c_str()); - Srv->SendServ(user->fd, buf); + if (quotes) + { + fsize = quotes->FileSize(); + str = quotes->GetLine(rand() % fsize); + sprintf(buf,"NOTICE %s :%s%s%s",user->nick,prefix.c_str(),str.c_str(),suffix.c_str()); + Srv->SendServ(user->fd, buf); + } return; } @@ -60,26 +59,26 @@ class ModuleRandQuote : public Module { Srv = new Server; conf = new ConfigReader; - + // Sort the Randomizer thingie.. + srand(time(NULL)); q_file = conf->ReadValue("randquote","file",0); prefix = conf->ReadValue("randquote","prefix",0); suffix = conf->ReadValue("randquote","suffix",0); if (q_file == "") { - printf("m_randquote: Quotefile not specified.. Please check your config.\n\n"); - exit(0); + log(DEFAULT,"m_randquote: Quotefile not specified - Please check your config."); + return; } - quotes = new FileReader(q_file); if(!quotes->Exists()) { - printf("m_randquote: QuoteFile not Found!! Please check your config.\n\n"); - exit(0); + log(DEFAULT,"m_randquote: QuoteFile not Found!! Please check your config - module will not function."); + return; } /* Hidden Command -- Mode clients assume /quote sends raw data to an IRCd >:D */ - Srv->AddCommand("QUOTE",handle_randquote,0,0); + else Srv->AddCommand("QUOTE",handle_randquote,0,0,"m_randquote.so"); } virtual ~ModuleRandQuote() @@ -91,7 +90,7 @@ class ModuleRandQuote : public Module virtual Version GetVersion() { - return Version(1,0,0,0); + return Version(1,0,0,1,VF_VENDOR); } virtual void OnUserConnect(userrec* user)