]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_helpop.cpp
Note where to find the docs.
[user/henk/code/inspircd.git] / src / modules / m_helpop.cpp
index 9c7d409a8be93acd496b6cce7662c3536d6ddb87..7ce44441dc474679857b6f0b071a18774e5dbf45 100644 (file)
@@ -45,16 +45,17 @@ class CommandHelpop : public Command
                if (parameter == "index")
                {
                        /* iterate over all helpop items */
-                       user->WriteServ("NOTICE %s :HELPOP topic index", user->nick.c_str());
+                       user->WriteServ("290 %s :HELPOP topic index", user->nick.c_str());
                        for (std::map<irc::string, std::string>::iterator iter = helpop_map.begin(); iter != helpop_map.end(); iter++)
                        {
-                               user->WriteServ("NOTICE %s :    %s", user->nick.c_str(), iter->first.c_str());
+                               user->WriteServ("292 %s :  %s", user->nick.c_str(), iter->first.c_str());
                        }
-                       user->WriteServ("NOTICE %s :*** End of HELPOP topic index", user->nick.c_str());
+                       user->WriteServ("292 %s :*** End of HELPOP topic index", user->nick.c_str());
                }
                else
                {
-                       user->WriteServ("NOTICE %s :*** HELPOP for %s", user->nick.c_str(), parameter.c_str());
+                       user->WriteServ("290 %s :*** HELPOP for %s", user->nick.c_str(), parameter.c_str());
+                       user->WriteServ("292 %s : -", user->nick.c_str());
 
                        std::map<irc::string, std::string>::iterator iter = helpop_map.find(parameter);
 
@@ -68,9 +69,16 @@ class CommandHelpop : public Command
                        std::string token = "*";
 
                        while (stream.GetToken(token))
-                               user->WriteServ("NOTICE %s :%s", user->nick.c_str(), token.c_str());
+                       {
+                               // Writing a blank line will not work with some clients
+                               if (token.empty())
+                                       user->WriteServ("292 %s : ", user->nick.c_str());
+                               else
+                                       user->WriteServ("292 %s :%s", user->nick.c_str(), token.c_str());
+                       }
 
-                       user->WriteServ("NOTICE %s :*** End of HELPOP", user->nick.c_str());
+                       user->WriteServ("292 %s : -", user->nick.c_str());
+                       user->WriteServ("292 %s :*** End of HELPOP", user->nick.c_str());
                }
 
                /* We dont want these going out over the network, return CMD_FAILURE