]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_maphide.cpp
Add method for writing server notices.
[user/henk/code/inspircd.git] / src / modules / m_maphide.cpp
index f3f4725191ffd919888b5acb6948deba945a9245..457b0f7be1c181f5d6254604afbaed8ecbb8c635 100644 (file)
@@ -25,10 +25,10 @@ class ModuleMapHide : public Module
 {
        std::string url;
  public:
-       ModuleMapHide()
+       void init()
        {
                Implementation eventlist[] = { I_OnPreCommand, I_OnRehash };
-               ServerInstance->Modules->Attach(eventlist, this, 2);
+               ServerInstance->Modules->Attach(eventlist, this, sizeof(eventlist)/sizeof(Implementation));
                OnRehash(NULL);
        }
 
@@ -39,19 +39,15 @@ class ModuleMapHide : public Module
 
        ModResult OnPreCommand(std::string &command, std::vector<std::string> &parameters, LocalUser *user, bool validated, const std::string &original_line)
        {
-               if (!IS_OPER(user) && !url.empty() && (command == "MAP" || command == "LINKS"))
+               if (validated && !user->IsOper() && !url.empty() && (command == "MAP" || command == "LINKS"))
                {
-                       user->WriteServ("NOTICE %s :/%s has been disabled; visit %s", user->nick.c_str(), command.c_str(), url.c_str());
+                       user->WriteNotice("/" + command + " has been disabled; visit " + url);
                        return MOD_RES_DENY;
                }
                else
                        return MOD_RES_PASSTHRU;
        }
 
-       virtual ~ModuleMapHide()
-       {
-       }
-
        virtual Version GetVersion()
        {
                return Version("Hide /MAP and /LINKS in the same form as ircu (mostly useless)", VF_VENDOR);
@@ -59,4 +55,3 @@ class ModuleMapHide : public Module
 };
 
 MODULE_INIT(ModuleMapHide)
-