]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_restrictbanned.cpp
Added some missing parameter checking in m_swhois
[user/henk/code/inspircd.git] / src / modules / m_restrictbanned.cpp
index c8c5451ed0f817a367a7bd38fc8efbfd5662f1ce..9315385a1aeb416bf0d2ad63a0ec5967b54404ee 100644 (file)
  * ---------------------------------------------------
  */
 
+#include "inspircd.h"
 #include "users.h"
 #include "channels.h"
 #include "modules.h"
 
-#include "inspircd.h"
-
 /* $ModDesc: Restricts banned users in a channel. May not speak, etc. */
 
 class ModuleRestrictBanned : public Module
 {
  private:
  public:
-       ModuleRestrictBanned(InspIRCd* Me) : Module::Module(Me)
+       ModuleRestrictBanned(InspIRCd* Me) : Module(Me)
        {
        }
        
@@ -47,7 +46,7 @@ class ModuleRestrictBanned : public Module
                if (!IS_LOCAL(user))
                        return 0;
 
-               if (channel->IsBanned(user) && channel->GetStatus(user) < STATUS_VOICE)
+               if (channel->GetStatus(user) < STATUS_VOICE && channel->IsBanned(user))
                {
                        /* banned, boned. drop the message. */
                        user->WriteServ("NOTICE "+std::string(user->nick)+" :*** You may not " + action + ", as you are banned on channel " + channel->name);
@@ -96,28 +95,4 @@ class ModuleRestrictBanned : public Module
        }
 };
 
-
-class ModuleRestrictBannedFactory : public ModuleFactory
-{
- public:
-       ModuleRestrictBannedFactory()
-       {
-       }
-       
-       ~ModuleRestrictBannedFactory()
-       {
-       }
-       
-       virtual Module * CreateModule(InspIRCd* Me)
-       {
-               return new ModuleRestrictBanned(Me);
-       }
-       
-};
-
-
-extern "C" void * init_module( void )
-{
-       return new ModuleRestrictBannedFactory;
-}
-
+MODULE_INIT(ModuleRestrictBanned)