X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmodules%2Fm_randquote.cpp;h=5cd8a8572f6f82ac6d72d316f08320175773e4ca;hb=eb4229deed0281ae566ef7e55a144e5d3183a4b2;hp=eda4de2bcb3ecb990af420c69a8ccd860a865c77;hpb=ec7fc489a14af54738da17a94b162a9606df4756;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_randquote.cpp b/src/modules/m_randquote.cpp index eda4de2bc..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,12 +36,13 @@ void handle_randquote(char** parameters, int pcntl, userrec *user) std::string str; int fsize; char buf[MAXBUF]; - - 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); + 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; } @@ -62,25 +62,23 @@ class ModuleRandQuote : public Module // 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,"m_randquote.so"); + else Srv->AddCommand("QUOTE",handle_randquote,0,0,"m_randquote.so"); } virtual ~ModuleRandQuote()