X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmodules%2Fm_stripcolor.cpp;h=f1504edaf329a6bf270c4441742a7a4eddb7a8bd;hb=d0cd749a70646f2c2bbd616a9934fada22ad1ffd;hp=86f307bae2ed4e494bccb87555cf75ef3f2f6e1e;hpb=2ab2de1dda8f2043898b9df8004ba5b6c4df7349;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_stripcolor.cpp b/src/modules/m_stripcolor.cpp index 86f307bae..f1504edaf 100644 --- a/src/modules/m_stripcolor.cpp +++ b/src/modules/m_stripcolor.cpp @@ -42,7 +42,6 @@ class UserStripColor : public SimpleUserModeHandler class ModuleStripColor : public Module { - bool AllowChanOps; ChannelStripColor csc; UserStripColor usc; @@ -56,7 +55,7 @@ class ModuleStripColor : public Module ServerInstance->Modules->AddService(usc); ServerInstance->Modules->AddService(csc); Implementation eventlist[] = { I_OnUserPreMessage, I_OnUserPreNotice, I_On005Numeric }; - ServerInstance->Modules->Attach(eventlist, this, 3); + ServerInstance->Modules->Attach(eventlist, this, sizeof(eventlist)/sizeof(Implementation)); } virtual ~ModuleStripColor() @@ -68,33 +67,6 @@ class ModuleStripColor : public Module ServerInstance->AddExtBanChar('S'); } - virtual void ReplaceLine(std::string &sentence) - { - /* refactor this completely due to SQUIT bug since the old code would strip last char and replace with \0 --peavey */ - int seq = 0; - - for (std::string::iterator i = sentence.begin(); i != sentence.end();) - { - if (*i == 3) - seq = 1; - else if (seq && (( ((*i >= '0') && (*i <= '9')) || (*i == ',') ) )) - { - seq++; - if ( (seq <= 4) && (*i == ',') ) - seq = 1; - else if (seq > 3) - seq = 0; - } - else - seq = 0; - - if (seq || ((*i == 2) || (*i == 15) || (*i == 22) || (*i == 21) || (*i == 31))) - i = sentence.erase(i); - else - ++i; - } - } - virtual ModResult OnUserPreMessage(User* user,void* dest,int target_type, std::string &text, char status, CUList &exempt_list) { if (!IS_LOCAL(user)) @@ -119,7 +91,7 @@ class ModuleStripColor : public Module if (active) { - this->ReplaceLine(text); + InspIRCd::StripColor(text); } return MOD_RES_PASSTHRU;