]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/stats.cpp
Replace OnAccessCheck with OnPreMode to remove a number of redundant checks
[user/henk/code/inspircd.git] / src / stats.cpp
index d385112c298dbbd6cecca3416c77398052e739f0..40ee40b189f5608c08637262eea79720f8b5f5db 100644 (file)
@@ -157,19 +157,13 @@ void InspIRCd::DoStats(char statschar, User* user, string_list &results)
 
                        if (!this->Config->WhoWasGroupSize == 0 && !this->Config->WhoWasMaxGroups == 0)
                        {
-                               Command* whowas_command = this->Parser->GetHandler("WHOWAS");
-                               if (whowas_command)
+                               Module* whowas = Modules->Find("cmd_whowas.so");
+                               if (whowas)
                                {
-                                       std::deque<classbase*> params;
-                                       Extensible whowas_stats;
-                                       params.push_back(&whowas_stats);
-                                       whowas_command->HandleInternal(WHOWAS_STATS, params);
-                                       if (whowas_stats.GetExt("stats"))
-                                       {
-                                               char* statc;
-                                               whowas_stats.GetExt("stats", statc);
-                                               results.push_back(sn+" 249 "+user->nick+" :"+ConvToStr(statc));
-                                       }
+                                       WhowasRequest req(NULL, whowas, WhowasRequest::WHOWAS_STATS);
+                                       req.user = user;
+                                       req.Send();
+                                       results.push_back(sn+" 249 "+user->nick+" :"+req.value);
                                }
                        }